<SEC-DOCUMENT>0001437749-20-003516.txt : 20200225
<SEC-HEADER>0001437749-20-003516.hdr.sgml : 20200225
<ACCEPTANCE-DATETIME>20200225165923
ACCESSION NUMBER:		0001437749-20-003516
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		129
CONFORMED PERIOD OF REPORT:	20191231
FILED AS OF DATE:		20200225
DATE AS OF CHANGE:		20200225

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			GENERAC HOLDINGS INC.
		CENTRAL INDEX KEY:			0001474735
		STANDARD INDUSTRIAL CLASSIFICATION:	MOTORS & GENERATORS [3621]
		IRS NUMBER:				205654756
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		S45 W29290 HIGHWAY 59
		CITY:			WAUKESHA
		STATE:			WI
		ZIP:			53187
		BUSINESS PHONE:		888 436-3722

	MAIL ADDRESS:	
		STREET 1:		S45 W29290 HIGHWAY 59
		CITY:			WAUKESHA
		STATE:			WI
		ZIP:			53187
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>gnrc20191231_10k.htm
<DESCRIPTION>FORM 10-K
<TEXT>
<XBRL>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:naics="http://xbrl.sec.gov/naics/2011-01-31" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:us-types="http://fasb.org/us-types/2017-01-31" xmlns:utreg="http://www.xbrl.org/2009/utr" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:us-roles="http://fasb.org/us-roles/2017-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:thunderdome="http://www.RDGFilings.com" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:gnrc="http://www.generac.com/20191231" xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:rr="http://xbrl.sec.gov/rr/2018-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2017-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2018-01-31" xmlns:srt="http://fasb.org/srt/2019-01-31">
 <head>
  <title>gnrc20191231_10k.htm</title>
  <!-- Generated by ThunderDome Portal - 2/25/2020 6:30:37 PM -->
  <meta http-equiv="Content-Type" content="text/html" /></head>
 <body style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding: 0in 0.1in; cursor: auto;"><div style="display: none;"><ix:header><ix:hidden>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="dei:EntityCentralIndexKey" id="thunderdome-EntityCentralIndexKey">0001474735</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="dei:EntityRegistrantName" id="thunderdome-EntityRegistrantName">GENERAC HOLDINGS INC.</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="dei:AmendmentFlag" format="ixt:booleanfalse">false</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="dei:CurrentFiscalYearEndDate">--12-31</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="dei:DocumentFiscalPeriodFocus">FY</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="dei:DocumentFiscalYearFocus">2019</ix:nonNumeric>
<ix:nonFraction id="c56031455" contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NumberOfMajorCustomers" scale="0">0</ix:nonFraction>
<ix:nonFraction id="c56031458" contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NumberOfMajorCustomers" scale="0">0</ix:nonFraction>
<ix:nonFraction id="c56031461" contextRef="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NumberOfMajorCustomers" scale="0">0</ix:nonFraction>
<ix:nonFraction id="c56031519" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" scale="3">0</ix:nonFraction>
<ix:nonFraction id="c56031520" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" scale="3">0</ix:nonFraction>
<ix:nonFraction id="c56031521" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAndIntangibleAssetImpairment" scale="3">0</ix:nonFraction>
<ix:nonFraction id="c56031536" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DeferredCostsAmortizationExpenseNextTwelveMonths" scale="3">2,598</ix:nonFraction>
<ix:nonFraction id="c56031539" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:DeferredCostsAmortizationExpenseYearTwo" scale="3">2,640</ix:nonFraction>
<ix:nonFraction id="c56031541" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DeferredCostsAmortizationExpenseYearThree" scale="3">2,689</ix:nonFraction>
<ix:nonFraction id="c56031544" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DeferredCostsAmortizationExpenseYearFour" scale="3">2,579</ix:nonFraction>
<ix:nonNumeric contextRef="d_2019-02-01_2019-02-28_BusinessAcquisitionAxis-PramacMember" name="gnrc:NoncontrollingInterestAgreementExtensionOfTerm" id="c56031712" format="ixt-sec:duryear">5</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-02-01_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember" name="gnrc:BusinessAcquisitionNoncontrollingInterestTermOfPutOption" id="c56031719" format="ixt-sec:duryear">5</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-02-01_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember" name="gnrc:BusinessAcquisitionTermOfCallOption" id="c56031720" format="ixt-sec:duryear">5</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_RangeAxis-MaximumMember" name="us-gaap:DerivativeRemainingMaturity1" id="c56031756" format="ixt-sec:durmonth">18</ix:nonNumeric>
<ix:nonFraction id="c56031758" contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeNumberOfInstrumentsHeld" scale="0">0</ix:nonFraction>
<ix:nonFraction id="c56031786" contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeNumberOfInstrumentsHeld" scale="0">0</ix:nonFraction>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_RangeAxis-MaximumMember" name="us-gaap:DerivativeRemainingMaturity1" id="c56031765" format="ixt-sec:durmonth">12</ix:nonNumeric>
<ix:nonFraction id="c56031767" contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:DerivativeNumberOfInstrumentsHeld" scale="0">43</ix:nonFraction>
<ix:nonFraction id="c56031768" contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:DerivativeNumberOfInstrumentsHeld" scale="0">40</ix:nonFraction>
<ix:nonFraction id="c56031777" contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="gnrc:NumberOfNewContractsEntered" scale="0">20</ix:nonFraction>
<ix:nonFraction id="c56031884" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:NumberOfReportableSegments" scale="0">2</ix:nonFraction>
<ix:nonFraction id="c56031915" contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">80</ix:nonFraction>
<ix:nonFraction id="c56032088" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="3">31,237</ix:nonFraction>
<ix:nonFraction id="c56032090" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="3">29,473</ix:nonFraction>
<ix:nonFraction id="c56032092" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" scale="3">22,226</ix:nonFraction>
<ix:nonFraction id="c56032094" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" scale="3">18,344</ix:nonFraction>
<ix:nonNumeric contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="c56032330" format="ixt-sec:duryear">1</ix:nonNumeric>
<ix:nonNumeric contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2021-01-01" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="c56032331" format="ixt-sec:duryear">1</ix:nonNumeric>
<ix:nonNumeric contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-01-01" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="c56032332" format="ixt-sec:duryear">1</ix:nonNumeric>
<ix:nonNumeric contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2023-01-01" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="c56032333" format="ixt-sec:duryear">1</ix:nonNumeric>
<ix:nonNumeric contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2024-01-01" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="c56032334" format="ixt-sec:duryear">1</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_RangeAxis-MinimumMember" name="gnrc:ExtendedWarrantyTerm" id="c56032335" format="ixt-sec:duryear">5</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_RangeAxis-MaximumMember" name="gnrc:ExtendedWarrantyTerm" id="c56032336" format="ixt-sec:duryear">10</ix:nonNumeric>
<ix:nonFraction id="c56032532" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" scale="0">0</ix:nonFraction>
<ix:nonFraction id="c56032550" contextRef="d_2019-01-01_2019-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember" unitRef="Share" format="ixt-sec:numwordsen" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0">no</ix:nonFraction>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="c56032900" format="ixt-sec:duryear">4</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="c56032901" format="ixt-sec:duryear">10</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="c56032935" format="ixt-sec:duryear">3</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-PerformanceSharesMember" name="gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" id="c56032938" format="ixt-sec:duryear">3</ix:nonNumeric>
<ix:footnote xml:lang="en-us" id="f29bd9376-4555-401c-8f4f-77bb68028bc7">Recorded in the other accrued liabilities line</ix:footnote>
<ix:footnote xml:lang="en-us" id="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274">Deductions from the allowance for doubtful accounts equal accounts receivable written off against the allowance, less recoveries. Deductions from the reserves for inventory excess and obsolete items equal inventory written off against the reserve as items were disposed of.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f84107ac1-3555-4c1a-9359-fe167c7af8e2">Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f16fca019-36c3-469b-9cee-ef9089cf0b37">Represents the noncontrolling interest of Captiva Energy calculated at the date of acquisition, February 1, 2019.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47">Represents pre-tax settlement charges related to the termination of the Company&#x2019;s domestic pension plan in the fourth quarter of 2019.</ix:footnote>
<ix:footnote xml:lang="en-us" id="fe0f611c3-28f4-4654-acdd-2fb3781618e4">Details of reclassifications from AOCL during 2019 are as follows:




Amounts reclassified from AOCL


Loss on pension settlement

 	$	10,920
Amortization of net loss

 	 	843
Total before tax

 	 	11,763
Income tax impact

 	 	(2,696	)
Amounts reclassified from AOCL

 	$	9,067	 </ix:footnote>
<ix:footnote xml:lang="en-us" id="f12b0337e-a70d-4dbc-b99f-5e9f1f5e91dd">Represents the additional noncontrolling interest of Pramac resulting from a common control transaction between Generac Mobile Products S.r.l. and Pramac UK Limited legal entities.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f8f9fc68d-66c3-4e12-829b-e5a2d70f2ed0">As a result of the Tax Act, we recognized a one-time, non-cash benefit of $28.4 million in the fourth quarter of 2017 primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from 35% to 21%.</ix:footnote>
<ix:footnote xml:lang="en-us" id="fb69b9381-15d5-40a5-a089-fba7f7ea978a">Recorded in the operating lease and other long-term liabilities line</ix:footnote>
<ix:footnote xml:lang="en-us" id="f6b5d3c8d-28cc-4165-9654-a3421af013a6">Represents unrealized losses of $(18,732), net of tax effect of $4,877 for the year ended December 31, 2019.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f5d4766a7-ec21-441a-8830-ae295e8ef823">Represents unrecognized actuarial gains of $1,992 net of tax effect of $(518), included in the computation of net periodic pension cost for the year ended December 31, 2019. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</ix:footnote>
<ix:footnote xml:lang="en-us" id="fb2c37323-c761-400f-9d07-425da1d65535">Includes certain foreign currency and purchase accounting related adjustments, gains/losses on disposal of assets and unrealized mark-to-market adjustments on commodity contracts.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f4502211e-35d2-4f32-9912-d69efb02673e">Represents unrealized gains of $3,951, net of tax effect of $(1,027) for the year ended December 31, 2018.</ix:footnote>
<ix:footnote xml:lang="en-us" id="fe35207bd-b252-4241-9385-ea0ef5516c32">Recorded in the current portion of long-term borrowings and finance lease obligations line</ix:footnote>
<ix:footnote xml:lang="en-us" id="f27e89862-095f-419c-96af-847a7134cb6a">Represents actuarial losses of $802, net of tax effect of $(209), amortized to net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</ix:footnote>
<ix:footnote xml:lang="en-us" id="fb396c7ff-0dc6-499e-8fa2-21aa90d873d1">Recorded in the operating lease and other assets line</ix:footnote>
<ix:footnote xml:lang="en-us" id="f97f04034-80c9-4fcd-a015-ce14f815fce6">Represents severance and other non-recurring restructuring charges related to the consolidation of certain of our facilities.</ix:footnote>
<ix:footnote xml:lang="en-us" id="ff80e36c3-2a38-4525-b91b-acabdeff1b15">Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity
issuance, debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f07932f20-e4c0-4165-be1b-2f8a83d57f63">Recorded in the property and equipment, net line</ix:footnote>
<ix:footnote xml:lang="en-us" id="fd22e7bd1-649b-49d1-afb0-3edefcd4af36">Represents unrecognized actuarial losses of $(211), net of tax benefit of $55, included in the computation of net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f966532ad-0b53-453d-91cc-1d00555eddd9">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f14b3dca3-beaa-42f4-8dad-7927404aa2d8">Recorded in the long-term borrowings and finance lease obligations line</ix:footnote>
<ix:footnote xml:lang="en-us" id="f688c16bc-067c-442d-94d4-c05738eeb1e2">With the adoption of ASU 2016-09 in 2017, excess tax benefits from equity awards are reflected within the provision for income taxes rather than within the consolidated balance sheet.</ix:footnote>
<ix:footnote xml:lang="en-us" id="f7fbe6b93-42b0-4870-bbe7-7f6007241821">Excludes approximately 38,900 and 48,200 stock options for the three and nine months ended September 30, 2018, respectively, as the impact of such awards was anti-dilutive. There were no awards with an anti-dilutive impact for the three and nine months ended September 30, 2019.</ix:footnote>
<ix:nonFraction id="c56030639" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3">6,968</ix:nonFraction>
<ix:nonFraction id="c56030640" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3">4,873</ix:nonFraction>
<ix:nonFraction id="c56030692" contextRef="i_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0">0.01</ix:nonFraction>
<ix:nonFraction id="c56030693" contextRef="i_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0">0.01</ix:nonFraction>
<ix:nonFraction id="c56030694" contextRef="i_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" scale="0">500,000,000</ix:nonFraction>
<ix:nonFraction id="c56030695" contextRef="i_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" scale="0">500,000,000</ix:nonFraction>
<ix:nonFraction id="c56030696" contextRef="i_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:CommonStockSharesIssued" scale="0">71,667,726</ix:nonFraction>
<ix:nonFraction id="c56030697" contextRef="i_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:CommonStockSharesIssued" scale="0">71,186,418</ix:nonFraction>
<ix:nonFraction id="c56030702" contextRef="i_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:TreasuryStockShares" scale="0">9,103,013</ix:nonFraction>
<ix:nonFraction id="c56030703" contextRef="i_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:TreasuryStockShares" scale="0">9,047,060</ix:nonFraction>
<ix:nonFraction id="c56030864" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" scale="3">2,384</ix:nonFraction>
<ix:nonFraction id="c56030944" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" sign="-" scale="3">21</ix:nonFraction>
<ix:nonFraction id="c56031010" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" scale="3">1,027</ix:nonFraction>
<ix:nonFraction id="c56031109" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" sign="-" scale="3">154</ix:nonFraction>
<ix:nonFraction id="c56031184" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" scale="3">4,877</ix:nonFraction></ix:hidden>
<ix:references>
<link:schemaRef xlink:href="gnrc-20191231.xsd" xlink:type="simple"></link:schemaRef></ix:references>
<ix:resources>
<xbrli:context id="d_2019-01-01_2019-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2019-06-28"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-06-28</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Share"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2020-02-19"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-02-19</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="NonApplicable"><xbrli:measure>thunderdome:item</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2019-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USDPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-ParentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="Year"><xbrli:measure>utr:Y</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-04-26_2019-04-26_BusinessAcquisitionAxis-PikaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PikaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-04-26</xbrli:startDate><xbrli:endDate>2019-04-26</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-04-26_BusinessAcquisitionAxis-PikaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PikaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-04-26</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-03-12_2019-03-12_BusinessAcquisitionAxis-NeurioMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:NeurioMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-03-12</xbrli:startDate><xbrli:endDate>2019-03-12</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-07-01_2019-09-30_BusinessAcquisitionAxis-NeurioMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:NeurioMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-07-01</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-03-12_BusinessAcquisitionAxis-NeurioMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:NeurioMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-03-12</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-06-01_2018-06-01_BusinessAcquisitionAxis-SelmecMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:SelmecMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-06-01</xbrli:startDate><xbrli:endDate>2018-06-01</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:SelmecMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-06-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:SelmecMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ProFormaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ProFormaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ProFormaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-03-01_BusinessAcquisitionAxis-PramacMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PramacMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-03-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-03-01_OwnershipAxis-PramacMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">gnrc:PramacMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-03-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-02-01_2019-02-28_BusinessAcquisitionAxis-PramacMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PramacMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-02-01</xbrli:startDate><xbrli:endDate>2019-02-28</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:CaptivaEnergySolutionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-02-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-02-01_OwnershipAxis-CaptivaEnergySolutionsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">gnrc:CaptivaEnergySolutionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-02-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-02-01_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:CaptivaEnergySolutionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-02-01</xbrli:startDate><xbrli:endDate>2019-02-01</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Month"><xbrli:measure>utr:M</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gnrc:OtherNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gnrc:OtherNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gnrc:OtherNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis">us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:NetAssetsGeographicAreaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:NetAssetsGeographicAreaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandAndLandImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandAndLandImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201602Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-01-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OperatingLeaseAndOtherAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OtherAccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherLongtermLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OperatingLeaseAndOtherLongtermLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-10-01_2019-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2020-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2021-01-01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-01-01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2022-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2023-01-01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2024-01-01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2024-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:OtherLinesOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:OtherLinesOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2013-05-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2013-05-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2013-05-31</xbrli:startDate><xbrli:endDate>2013-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2013-05-31</xbrli:startDate><xbrli:endDate>2013-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:LIBORFloorRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2013-05-31</xbrli:startDate><xbrli:endDate>2013-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">gnrc:NetDebtLeverageRatioThresholdMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2014-04-01</xbrli:startDate><xbrli:endDate>2014-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">gnrc:NetDebtLeverageRatioThresholdMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2014-04-01</xbrli:startDate><xbrli:endDate>2014-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-05-01</xbrli:startDate><xbrli:endDate>2017-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-05-01</xbrli:startDate><xbrli:endDate>2017-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-05-01</xbrli:startDate><xbrli:endDate>2017-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:LIBORFloorRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-05-01</xbrli:startDate><xbrli:endDate>2017-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-06-30_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-12-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-12-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-12-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-06-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-06-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:LIBORFloorRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-10-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-01</xbrli:startDate><xbrli:endDate>2015-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-05-01</xbrli:startDate><xbrli:endDate>2015-05-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-06-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-06-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-04-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-04-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-06-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-06-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-04-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-04-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-10-01_2018-10-31_CreditFacilityAxis-AmendedABLFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-10-01</xbrli:startDate><xbrli:endDate>2018-10-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_CreditFacilityAxis-AmendedABLFacilityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2015-08-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2015-08-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-10-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2016-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2018-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-09-01_2018-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2018-09-01</xbrli:startDate><xbrli:endDate>2018-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2015-08-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2015-08-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2015-08-01_2019-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2015-08-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-10-01_2017-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2017-10-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:SavingsPlan401kMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:SavingsPlan401kMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:SavingsPlan401kMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-10-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:FixedIncomeFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:FixedIncomeFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:FixedIncomeFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:DomesticEquityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:DomesticEquityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:DomesticEquityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:InternationalEquityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:InternationalEquityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:InternationalEquityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:RealEstateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:RealEstateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:RealEstateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:MutualFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:EquityAndRealEstateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:EquityAndRealEstateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2010-02-10"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2010-02-10</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PlanNameAxis-EquityIncentivePlanPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:EquityIncentivePlanPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_PlanNameAxis-EquityIncentivePlanPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:EquityIncentivePlanPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_PlanNameAxis-EquityIncentivePlanPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:EquityIncentivePlanPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-06-13_PlanNameAxis-The2019EquityIncentivePlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:The2019EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-06-13</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_PlanNameAxis-The2019EquityIncentivePlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:The2019EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2016-01-01_2016-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2016-01-01</xbrli:startDate><xbrli:endDate>2016-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_AwardTypeAxis-PerformanceSharesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gnrc:RestrictedStockAndPerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gnrc:RestrictedStockAndPerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gnrc:RestrictedStockAndPerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:BoardOfDirectorsChairmanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:BoardOfDirectorsChairmanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:BoardOfDirectorsChairmanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-04-01_2019-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-04-01</xbrli:startDate><xbrli:endDate>2019-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-07-01_2019-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-07-01</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-04-01_2018-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2018-04-01</xbrli:startDate><xbrli:endDate>2018-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-07-01_2018-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2018-07-01</xbrli:startDate><xbrli:endDate>2018-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-10-01_2018-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2018-10-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-01-01</xbrli:startDate><xbrli:endDate>2017-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f29bd9376-4555-401c-8f4f-77bb68028bc7" fromRefs="c56032283"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274" fromRefs="c56033155 c56033160 c56033165 c56033171 c56033176 c56033181 c56033187 c56033192 c56033197"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f84107ac1-3555-4c1a-9359-fe167c7af8e2" fromRefs="c56031972 c56031973 c56031974"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f16fca019-36c3-469b-9cee-ef9089cf0b37" fromRefs="c56031730"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47" fromRefs="c56031978 c56031979 c56031980"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fe0f611c3-28f4-4654-acdd-2fb3781618e4" fromRefs="c56031831"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f12b0337e-a70d-4dbc-b99f-5e9f1f5e91dd" fromRefs="c56031733"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f8f9fc68d-66c3-4e12-829b-e5a2d70f2ed0" fromRefs="c56032728 c56032729"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fb69b9381-15d5-40a5-a089-fba7f7ea978a" fromRefs="c56032284"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f6b5d3c8d-28cc-4165-9654-a3421af013a6" fromRefs="c56031827"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f5d4766a7-ec21-441a-8830-ae295e8ef823" fromRefs="c56031825"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fb2c37323-c761-400f-9d07-425da1d65535" fromRefs="c56031969 c56031970 c56031971"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f4502211e-35d2-4f32-9912-d69efb02673e" fromRefs="c56031857"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fe35207bd-b252-4241-9385-ea0ef5516c32" fromRefs="c56032290"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f27e89862-095f-419c-96af-847a7134cb6a" fromRefs="c56031861"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fb396c7ff-0dc6-499e-8fa2-21aa90d873d1" fromRefs="c56032282"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f97f04034-80c9-4fcd-a015-ce14f815fce6" fromRefs="c56031984 c56031985 c56031986"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="ff80e36c3-2a38-4525-b91b-acabdeff1b15" fromRefs="c56031981 c56031982 c56031983"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f07932f20-e4c0-4165-be1b-2f8a83d57f63" fromRefs="c56032289"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="fd22e7bd1-649b-49d1-afb0-3edefcd4af36" fromRefs="c56031855"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f966532ad-0b53-453d-91cc-1d00555eddd9" fromRefs="c56031975 c56031976 c56031977"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f14b3dca3-beaa-42f4-8dad-7927404aa2d8" fromRefs="c56032291"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f688c16bc-067c-442d-94d4-c05738eeb1e2" fromRefs="c56032724 c56032725 c56032726"></ix:relationship>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f7fbe6b93-42b0-4870-bbe7-7f6007241821" fromRefs="c56032565 c56032566 c56032567"></ix:relationship>
<xbrli:context id="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-NetPeriodicBenefitCostsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001474735</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:NetPeriodicBenefitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context></ix:resources>
</ix:header></div>
  <div>
    &#xa0;
  </div>
  <div><p style="font-size:3pt;margin:0pt;text-align:center;">&#xa0;</p>
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman;"><a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a></p>
<p style="font-size:3pt;margin:0pt;text-align:center;">&#xa0;</p>
<hr style="height: 3px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 0 0 3pt 0" />
<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><b>UNITED STATES<b> </b>SECURITIES AND EXCHANGE COMMISSION</b></p>
<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>WASHINGTON, D.C. 20549</b></p>
<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p>
<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;">&#xa0;</p>
<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><b>FORM <ix:nonNumeric name="dei:DocumentType" contextRef="d_2019-01-01_2019-12-31">10-K</ix:nonNumeric></b></p>
<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
 <tbody>
  <tr>
   <td style="vertical-align:top;width:10.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>(Mark One)</b></p> </td>
   <td style="vertical-align:bottom;width:89.2%;">&#xa0;</td>
  </tr>
  <tr>
   <td style="vertical-align:top;width:10.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><ix:nonNumeric name="dei:DocumentAnnualReport" format="ixt-sec:boolballotbox" contextRef="d_2019-01-01_2019-12-31">&#x2612;</ix:nonNumeric></p> </td>
   <td style="vertical-align:top;width:89.2%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>ANNUAL REPORT PURSUANT TO SECTION&#xa0;13 OR 15(d)&#xa0;OF&#xa0;THE SECURITIES EXCHANGE ACT OF&#xa0;1934</b></p> </td>
  </tr>
  <tr>
   <td colspan="2" style="vertical-align:top;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>For the fis</b><b>cal year ended <ix:nonNumeric name="dei:DocumentPeriodEndDate" format="ixt:datemonthdayyearen" contextRef="d_2019-01-01_2019-12-31">December 31, 2019</ix:nonNumeric></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Or</b></p> </td>
  </tr>
  <tr>
   <td style="vertical-align:top;width:10.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><ix:nonNumeric name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" contextRef="d_2019-01-01_2019-12-31">&#x2610;</ix:nonNumeric></p> </td>
   <td style="vertical-align:top;width:89.2%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>TRANSITION REPORT PURSUANT TO SECTION&#xa0;13 OR 15(d)&#xa0;OF&#xa0;THE SECURITIES EXCHANGE ACT OF&#xa0;1934</b></p> </td>
  </tr>
  <tr>
   <td colspan="2" style="vertical-align:top;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>For the transition period from&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; to </b></p> </td>
  </tr>
 </tbody>
</table>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;"><b>Commission File Number&#xa0;<ix:nonNumeric name="dei:EntityFileNumber" contextRef="d_2019-01-01_2019-12-31">001-34627</ix:nonNumeric></b></p>
<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;">&#xa0;</p>
<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><b>GENERAC HOLDINGS INC.</b></p>
<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">(Exact name of registrant as specified in its charter)</p>
<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
 <tbody>
  <tr>
   <td colspan="3" style="vertical-align:top;width:50%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;"><b><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" contextRef="d_2019-01-01_2019-12-31">Delaware</ix:nonNumeric></b><br /> (State or other jurisdiction of incorporation or organization)</p> </td>
   <td colspan="3" style="vertical-align:top;width:50%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" contextRef="d_2019-01-01_2019-12-31">20-5654756</ix:nonNumeric></b><br /> (IRS Employer Identification No.)</p> </td>
  </tr>
  <tr>
   <td colspan="3" style="vertical-align:top;width:50%;">&#xa0;</td>
   <td colspan="3" style="vertical-align:top;width:50%;">&#xa0;</td>
  </tr>
  <tr>
   <td colspan="3" style="vertical-align:top;width:50%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;"><b><ix:nonNumeric name="dei:EntityAddressAddressLine1" contextRef="d_2019-01-01_2019-12-31">S45 W29290 Hwy 59</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" contextRef="d_2019-01-01_2019-12-31">Waukesha</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" contextRef="d_2019-01-01_2019-12-31">WI</ix:nonNumeric></b><br /> (Address of principal executive offices)</p> </td>
   <td colspan="3" style="vertical-align:top;width:50%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><ix:nonNumeric name="dei:EntityAddressPostalZipCode" contextRef="d_2019-01-01_2019-12-31">53189</ix:nonNumeric></b><br /> (Zip Code)</p> </td>
  </tr>
  <tr>
   <td colspan="6" style="vertical-align:top;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;"><b>(<ix:nonNumeric name="dei:CityAreaCode" contextRef="d_2019-01-01_2019-12-31">262</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" contextRef="d_2019-01-01_2019-12-31">544-4811</ix:nonNumeric></b><br /> (Registrant&#x2019;s telephone number, including area code)</p> </td>
  </tr>
 </tbody>
</table>
<p style="margin: 0pt;">&#xa0;</p>
<p style="margin: 0pt; text-align: center;"><span style="text-transform:uppercase;">Securities registered pursuant to Section</span> 12(b) <span style="text-transform:uppercase;">of the Act</span>:</p>
<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
 <tbody>
  <tr>
   <td style="vertical-align: top; border-color: rgb(0, 0, 0); border-style: solid; border-width: 1px; width: 35%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Title of each class</p> </td>
   <td style="vertical-align: top; border-bottom: 1px solid rgb(0, 0, 0); width: 30%; border-top: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Trading Symbol(s)</p> </td>
   <td style="vertical-align: top; border-color: rgb(0, 0, 0); border-style: solid; border-width: 1px; width: 35%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Name of each exchange on which registered</p> </td>
  </tr>
  <tr>
   <td style="vertical-align: top; border-bottom: 1px solid rgb(0, 0, 0); width: 35%; border-left: 1px solid rgb(0, 0, 0); border-right: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><ix:nonNumeric name="dei:Security12bTitle" contextRef="d_2019-01-01_2019-12-31">Common Stock, $0.01 par value</ix:nonNumeric></b></p> </td>
   <td style="vertical-align:top;border-bottom:solid 1px #000000;;width:30%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><ix:nonNumeric name="dei:TradingSymbol" contextRef="d_2019-01-01_2019-12-31">GNRC</ix:nonNumeric></b></p> </td>
   <td style="vertical-align: top; border-bottom: 1px solid rgb(0, 0, 0); width: 35%; border-left: 1px solid rgb(0, 0, 0); border-right: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><ix:nonNumeric name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" contextRef="d_2019-01-01_2019-12-31">New York Stock Exchange</ix:nonNumeric></b></p> </td>
  </tr>
 </tbody>
</table>
<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
 <tbody>
  <tr>
   <td colspan="1" style="vertical-align:top;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;">SECURITIES REGISTERED PURSUANT TO SECTION&#xa0;12(g) OF THE ACT: <b>None</b></p> </td>
  </tr>
 </tbody>
</table>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt;">&#xa0;</p>
<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule&#xa0;405 of the Securities Act.&#xa0;<ix:nonNumeric name="dei:EntityWellKnownSeasonedIssuer" contextRef="d_2019-01-01_2019-12-31">Yes</ix:nonNumeric>&#xa0;&#x2612; No&#xa0;&#x2610;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">Indicate by check mark if the registrant is not required to file reports pursuant to Section&#xa0;13 or Section&#xa0;15(d) of the Act.&#xa0;Yes&#xa0;&#x2610; <ix:nonNumeric name="dei:EntityVoluntaryFilers" contextRef="d_2019-01-01_2019-12-31">No</ix:nonNumeric>&#xa0;&#x2612;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">Indicate by check mark whether the registrant (1)&#xa0;has filed all reports required to be filed by Section&#xa0;13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12&#xa0;months (or for such shorter period that the registrant was required to file such reports), and (2)&#xa0;has been subject to such filing requirements for the past 90&#xa0;days.&#xa0;<ix:nonNumeric name="dei:EntityCurrentReportingStatus" contextRef="d_2019-01-01_2019-12-31">Yes</ix:nonNumeric>&#xa0;&#x2612; No&#xa0;&#x2610;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule&#xa0;405 of Regulation S-T (&#xa7; 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). <ix:nonNumeric name="dei:EntityInteractiveDataCurrent" contextRef="d_2019-01-01_2019-12-31">Yes</ix:nonNumeric>&#xa0;&#x2612;&#xa0;&#xa0;No&#xa0;&#x2610;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">Indicate by check mark if disclosure of delinquent filers pursuant to Item&#xa0;405 of Regulation&#xa0;S-K (&#xa7; 229.405 of this chapter) is not contained herein, and will not be contained, to the best of registrant&#x2019;s knowledge, in definitive proxy or information statements incorporated by reference in Part&#xa0;III of this Form&#xa0;10-K or any amendment to this Form&#xa0;10-K.&#xa0;&#x2610;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">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 &#x201c;large accelerated filer,&#x201d; &#x201c;accelerated filer,&#x201d; &#x201c;smaller reporting company,&#x201d; and &#x201c;emerging growth company&#x201d; in Rule&#xa0;12b-2 of the Exchange Act.</p>
<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">
 <tbody>
  <tr>
   <td style="width: 50%; padding-left: 18pt;"><ix:nonNumeric name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" contextRef="d_2019-01-01_2019-12-31">Large accelerated filer</ix:nonNumeric> &#x2612;</td>
   <td style="width: 50%;">Accelerated filer &#x2610;</td>
  </tr>
  <tr>
   <td style="padding-left: 18pt;">Non-accelerated filer &#x2610;</td>
   <td>Smaller reporting company <ix:nonNumeric name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" contextRef="d_2019-01-01_2019-12-31">&#x2610;</ix:nonNumeric></td>
  </tr>
  <tr>
   <td style="padding-left: 18pt;">Emerging growth company <ix:nonNumeric name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" contextRef="d_2019-01-01_2019-12-31">&#x2610;</ix:nonNumeric></td>
   <td>&#xa0;</td>
  </tr>
 </tbody>
</table>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">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. &#x2610;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#xa0;12b-2 of the Exchange Act). Yes&#xa0;<ix:nonNumeric name="dei:EntityShellCompany" format="ixt-sec:boolballotbox" contextRef="d_2019-01-01_2019-12-31">&#x2610;</ix:nonNumeric> No&#xa0;&#x2612;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">The aggregate market value of the voting common equity held by non-affiliates of the registrant on June 28, 2019, the last business day of the registrant&#x2019;s most recently completed second fiscal quarter, was approximately $<ix:nonFraction name="dei:EntityPublicFloat" scale="0" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="i_2019-06-28">4,191,188,195</ix:nonFraction> based upon the closing price reported for such date on the New York Stock Exchange.</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">&#xa0;</p>
<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: left; text-indent: 18pt;">As of February 19, 2020, <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" scale="0" unitRef="Share" decimals="INF" format="ixt:numdotdecimal" contextRef="i_2020-02-19">62,567,525</ix:nonFraction>&#xa0;shares of registrant's common stock were outstanding.</p>
<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>DOCUMENTS INCORPORATED BY REFERENCE</b></p>
<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Portions of the registrant&#x2019;s Annual Report to Stockholders for the year ended December 31, 2019 furnished to the Securities and Exchange Commission are incorporated by reference into Part II of this Form 10-K. Portions of the registrant&#x2019;s Proxy Statement for the 2020 Annual Meeting of Stockholders (the &#x201c;2020 Proxy Statement&#x201d;), which will be filed by the registrant on or prior to 120 days following the end of the registrant&#x2019;s fiscal year ended December 31, 2019, are incorporated by reference into Part III of this Form 10-K.</p>
<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<hr style="height: 3px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 0 0 3pt 0" />
<p style="font-size: 10pt; margin: 0pt; text-align: left; font-family: Times New Roman;">&#xa0;</p>
<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
 <div class="PGNUM" style="text-align: center; width: 100%">
  &#xa0;
 </div>
 <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
 <div class="PGHDR" style="text-align: left; width: 100%">
  <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
 </div>
</div></div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <div>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><a id="toc" href=""></a><b>201</b><b>9</b><b> FORM 10-K ANNUAL REPORT</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>TABLE OF CONTENTS</b></p>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="vertical-align:bottom;width:9.7%;">&#xa0;</td>
      <td style="vertical-align:bottom;width:75.5%;">&#xa0;</td>
      <td style="vertical-align: bottom; width: 14.8%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Page</b></p> </td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;"><a href="#part1" style="-sec-extract:exhibit;"><b>PART I</b></a></p> </td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;">&#xa0;</td>
      <td style="vertical-align:top;width:75.5%;">&#xa0;</td>
      <td style="vertical-align: bottom; width: 14.8%;">&#xa0;</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;1.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item1" style="-sec-extract:exhibit;">Business</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2</p> </td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;1A.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item1a" style="-sec-extract:exhibit;">Risk Factors</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">8</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;1B.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item1b" style="-sec-extract:exhibit;">Unresolved Staff Comments</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">16</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;2.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item2" style="-sec-extract:exhibit;">Properties</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">16</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;3.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item3" style="-sec-extract:exhibit;">Legal Proceedings</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">17</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;4.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item4" style="-sec-extract:exhibit;">Mine Safety Disclosures</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">17</td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;">&#xa0;</td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;"><a href="#part2" style="-sec-extract:exhibit;"><b>PART II</b></a></p> </td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;">&#xa0;</td>
      <td style="vertical-align:top;width:75.5%;">&#xa0;</td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">&#xa0;</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;5.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item5" style="-sec-extract:exhibit;">Market for Registrant&#x2019;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">17</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;6.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item6" style="-sec-extract:exhibit;">Selected Financial Data</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">19</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;7.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item7" style="-sec-extract:exhibit;">Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">24</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;7A.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item7a" style="-sec-extract:exhibit;">Quantitative and Qualitative Disclosures About Market Risk</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">36</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;8.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item8" style="-sec-extract:exhibit;">Financial Statements and Supplementary Data</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">37</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;9.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item9" style="-sec-extract:exhibit;">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">72</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;9A.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item9a" style="-sec-extract:exhibit;">Controls and Procedures</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">72</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;9B.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item9b" style="-sec-extract:exhibit;">Other Information</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;">&#xa0;</td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;"><a href="#part3" style="-sec-extract:exhibit;"><b>PART III</b></a></p> </td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;">&#xa0;</td>
      <td style="vertical-align:top;width:75.5%;">&#xa0;</td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">&#xa0;</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;10.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item10" style="-sec-extract:exhibit;">Directors, Executive Officers and Corporate Governance</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;11.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item11" style="-sec-extract:exhibit;">Executive Compensation</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;12.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item12" style="-sec-extract:exhibit;">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;13.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item13" style="-sec-extract:exhibit;">Certain Relationships and Related Transactions, and Director Independence</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;14.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item14" style="-sec-extract:exhibit;">Principal Accountant Fees and Services</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;">&#xa0;</td>
     </tr>
     <tr>
      <td colspan="3" style="vertical-align:bottom;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;"><a href="#part4" style="-sec-extract:exhibit;"><b>PART IV</b></a></p> </td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;">&#xa0;</td>
      <td style="vertical-align:top;width:75.5%;">&#xa0;</td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">&#xa0;</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item&#xa0;15.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item15" style="-sec-extract:exhibit;">Exhibits and Financial Statement Schedules</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">73</td>
     </tr>
     <tr>
      <td style="vertical-align:top;width:9.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;">Item 16.</p> </td>
      <td style="vertical-align:top;width:75.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="#item16" style="-sec-extract:exhibit;">Form 10-K Summary</a></p> </td>
      <td style="vertical-align: bottom; width: 14.8%; text-align: center;">77</td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%">
      &#xa0;
    </div>
    <hr />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
  </div>
  <div>
    &#xa0;
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Forward-Looking Statements</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">This annual report contains forward-looking statements that are subject to risks and uncertainties. Forward-looking statements give our current expectations and projections relating to our financial condition, results of operations, plans, objectives, future performance and business. You can identify forward-looking statements by the fact that they do not relate strictly to historical or current facts. These statements may include words such as &#x201c;anticipate,&#x201d; &#x201c;estimate,&#x201d; &#x201c;expect,&#x201d; &#x201c;forecast,&#x201d; &#x201c;project,&#x201d; &#x201c;plan,&#x201d; &#x201c;intend,&#x201d; &#x201c;believe,&#x201d; &#x201c;confident,&#x201d; &#x201c;may,&#x201d; &#x201c;should,&#x201d; &#x201c;can have,&#x201d; &#x201c;likely,&#x201d; &#x201c;future,&#x201d; &#x201c;optimistic&#x201d; and other words and terms of similar meaning in connection with any discussion of the timing or nature of future operating or financial performance or other events.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The forward-looking statements contained in this annual report are based on assumptions that we have made in light of our industry experience and on our perceptions of historical trends, current conditions, expected future developments and other factors we believe are appropriate under the circumstances. As you read and consider this report, you should understand that these statements are not guarantees of performance or results. They involve risks, uncertainties (some of which are beyond our control) and assumptions. Although we believe that these forward-looking statements are based on reasonable assumptions, you should be aware that many factors could affect our actual financial results and cause them to differ materially from those anticipated in the forward-looking statements. The forward-looking statements contained in this annual report include estimates regarding:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">our business, financial and operating results, and future economic performance;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">proposed new product and service offerings; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">management's goals, expectations and objectives and other similar expressions concerning matters that are not historical facts.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Factors that could affect our actual financial results and cause them to differ materially from those anticipated in the forward-looking statements include:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">frequency and duration of power outages impacting demand for our products;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">availability, cost and quality of raw materials and key components from our global supply chain and labor needed in producing our products;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">the impact on our results of possible fluctuations in interest rates, foreign currency exchange rates, commodities, product mix and regulatory tariffs;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">the possibility that the expected synergies, efficiencies and cost savings of our acquisitions will not be realized, or will not be realized within the expected time period;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">the risk that our acquisitions will not be integrated successfully;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">difficulties we may encounter as our business expands globally or into new markets;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">our dependence on our distribution network;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">our ability to invest in, develop or adapt to changing technologies and manufacturing techniques;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">loss of our key management and employees;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">increase in product and other liability claims or recalls;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">failures or security breaches of our networks or information technology systems; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">changes in environmental, health and safety, or product compliance laws and regulations affecting our products or operations.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:36pt;margin-right:0pt;margin-top:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Should one or more of these risks or uncertainties materialize, or should any of these assumptions prove incorrect, our actual results may vary in material respects from those projected in any forward-looking statements. A detailed discussion of these and other factors that may affect future results is contained in Item 1A of this Annual Report on Form 10-K. Stockholders, potential investors and other readers should consider these factors carefully in evaluating the forward-looking statements.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Any forward-looking statement made by us in this report speaks only as of the date on which it is made. Factors or events that could cause our actual results to differ may emerge from time to time, and it is not possible for us to predict all of them. We undertake no obligation to update any forward-looking statement, whether as a result of new information, future developments or otherwise, except as may be required by law.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%">
     &#xa0;
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><a id="part1" href=""></a>PART I</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item1" href=""></a>Item&#xa0;1. Business </b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Founded in 1959, Generac Holdings Inc. (the Company or Generac) is a leading global designer and manufacturer of a wide range of energy technology solutions. The Company provides power generation equipment, energy storage systems, and other power products serving the residential, light commercial and industrial markets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Power generation is a key focus of the Company, which differentiates us from our competitors who also have broad operations outside of the power equipment market. As the only significant market participant focused predominantly on these products, we maintain one of the leading market positions in the power equipment market in North America and an expanding presence internationally. We believe we have one of the widest ranges of products in the marketplace, including residential, commercial and industrial standby generators; as well as portable and mobile generators used in a variety of applications. A key strategic focus for the Company in recent years has been leveraging our leading position in the growing market for cleaner burning, more cost-effective natural gas fueled generators to expand into applications beyond standby power. We have also been focused on &#x201c;connecting&#x201d; the equipment we manufacture to the users of that equipment, helping to drive additional value to our customers and our distribution partners over the product lifecycle.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">During 2019, we began providing energy storage systems as a clean energy solution for residential use that capture and store electricity from solar panels or other power sources&#xa0;and help reduce home energy costs while also protecting homes from brief power outages.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other engine powered products that we design and manufacture include light towers which provide temporary lighting for various end markets; commercial and industrial mobile heaters and pumps used in the oil &amp; gas, construction and other industrial markets; and a broad product line of outdoor power equipment for residential and commercial use.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We design, manufacture, source and modify engines, alternators, transfer switches and other components necessary for our power products, which are fueled by natural gas, liquid propane, gasoline, diesel and Bi-Fuel&#x2122;. We also design, source, modify and integrate batteries, inverters, power electronics, controls, energy monitoring devices and other components into our energy storage systems. Our products are available globally through a broad network of independent dealers, distributors, retailers, ecommerce partners, wholesalers and equipment rental companies under a variety of brand names. We also sell direct to certain national and regional account customers, as well as to individual consumers, that are the end users of our products.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We have a significant market share in the residential and light commercial markets for automatic standby generators, which we believe remain under-penetrated in the marketplace. We also have a leading market position for portable generators used in residential, light construction and recreational applications. We believe that our leading market position is largely attributable to our strategy of providing a broad product line of high-quality, innovative and affordable products through our extensive and multi-layered distribution network to whom we offer comprehensive support programs, and leads from the factory. In addition, we are a leading provider of light towers, mobile generators, flameless heaters, outdoor power equipment and industrial diesel generators ranging in sizes up to 3,250kW. As we enter the rapidly developing market for energy storage, we offer energy storage systems ranging in configurations up to 34kWh, and expect to gain share by leveraging our capabilities that we have developed to grow the residential standby generator market.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Over the years, we have executed a number of acquisitions that support our strategic plan. A summary of recent acquisitions can be found in Note 1, &#x201c;Description of Business,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>P</b><b>roducts</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We design and manufacture stationary, portable and mobile generators with single-engine outputs ranging between 800W and 3,250kW. We have the ability to expand the power range for certain stationary generator solutions to much larger multi-megawatt systems through an integrated paralleling configuration called Modular Power Systems (MPS). Other engine powered products and solutions that we provide include light towers, mobile heaters, power washers and water pumps, along with a broad line of outdoor power equipment. We now have a complete line of energy storage systems and energy monitoring solutions as we enter the clean energy markets. We classify our products into three categories based on similar range of power output geared for varying end customer uses: Residential products, Commercial &amp; Industrial (C&amp;I) products and Other products &amp; services. The following summary outlines our portfolio of products, including their key attributes and customer applications.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Residential</i></b><b><i> P</i></b><b><i>roducts</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our residential automatic standby generators range in output from 6kW to 60kW, operate on natural gas, liquid propane or diesel, and are permanently installed with an automatic transfer switch, which we also manufacture. Air-cooled engine residential standby generators range in outputs from 6kW to 22kW, are available in steel and aluminum enclosures and serve as an emergency backup for small to medium-sized homes. Liquid-cooled engine generators serve as emergency backup for larger homes and small businesses and range in output from 22kW to 150kW. We also provide a remote monitoring system with various options for home standby generators called <i>Mobile</i> <i>Link</i>&#x2122;. This remote monitoring capability is a standard, WiFi-enabled feature on every home standby generator that we offer, and allows our customers to check the status of their generator conveniently online, and also provides the capability to similarly receive maintenance and service alerts. Our remote monitoring platform also allows our distribution partners to monitor their installed base of customers through a feature that we call &#x201c;<i>Fleet</i>&#x201d;, enabling them to offer a more proactive experience to service a customer&#x2019;s generator.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     2
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We provide a broad product line of portable and inverter generators that are fueled predominantly by gasoline, with certain models running on propane and diesel fuel, which range in size from 800W to 17.5kW. These products serve as an emergency home backup source of electricity and are also used for construction and recreational purposes. Our portable generators are targeted at homeowners, with price points ranging between the consumer value end of the market through the premium homeowner market; at professional contractors, starting at the value end through the premium contractor segment; and at the recreational market with our inverter product line. In addition, we offer manual transfer switches to supplement our portable generator product offering.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We provide a broad product line of engine driven power washers for residential and commercial use, fueled by gasoline, which range in pressure from 2,500 to 4,200 PSI. We also provide a broad product line of outdoor power equipment that includes water pumps, trimmer &amp; brush mowers, log splitters, lawn &amp; leaf vacuums, and chipper shredders for the property maintenance needs of residences, commercial properties, municipalities and farms. These products are largely sold in North America through online catalogs, retail hardware stores and outdoor power equipment dealers primarily under the DR&#xae; brand name.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The acquisitions of Neurio Technology Inc. in March 2019 and Pika Energy, Inc. in April 2019 accelerated our entrance into the energy storage and energy monitoring markets. Late in 2019 we began selling complete energy storage systems &#x2013; marketed under the names PWRcell<sup style="vertical-align:top;line-height:120%;font-size:pt">TM</sup>&#xa0;and PWRview<sup style="vertical-align:top;line-height:120%;font-size:pt">TM</sup>. This clean energy solution consists of a system of batteries, an inverter, power electronic controls, energy monitoring hardware &amp; software, and other components. These systems capture and store electricity from solar panels or the electric grid and help reduce home energy costs while also protecting homes from brief power outages, and range in size from 8kWh up to 34kWh.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Residential products comprised 51.9%, 51.5% and 51.8%, respectively, of total net sales in 2019, 2018 and 2017.<sup style="vertical-align:top;line-height:120%;font-size:pt"> </sup></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Commercial &amp; Industrial</i></b><b><i> P</i></b><b><i>roducts</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We offer a full line of C&amp;I generators fueled by diesel, natural gas, liquid propane and Bi-Fuel&#x2122;. We believe we have one of the broadest product offerings in the industry with power outputs ranging from 10kW up to 3,250kW.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our light-commercial standby generators include a full range of affordable systems from 22kW to 150kW and related transfer switches, providing three-phase power sufficient for most small and mid-sized businesses such as grocery stores, convenience stores, restaurants, gas stations, pharmacies, retail banks, small health care facilities and other small-footprint retail applications. Our light-commercial generators run on natural gas, liquid propane and diesel fuel.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We design and manufacture a broad product line of standard and configured stationary generators and related transfer switches for various industrial standby, continuous-duty and prime rated applications. Our single-engine industrial generators range in output from 10kW up to 3,250kW, which includes stationary and containerized packages, with our MPS technology extending our product range up to much larger multi-megawatt systems through an integrated paralleling configuration. During 2018, we introduced a new 750kW gaseous-fueled generator, our largest and most powerful generator to date, with plans going forward to expand these cleaner-fuel generators into larger applications. We offer four fuel options for our industrial generators, including diesel, natural gas, liquid propane or Bi-Fuel&#x2122;. Bi-Fuel&#x2122; generators operate on a combination of both diesel and natural gas to allow our customers the advantage of multiple fuel sources and extended run times. Our industrial standby generators are primarily used as emergency backup for larger applications in the healthcare, telecom, datacom, commercial office, retail, municipal and manufacturing markets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our MPS technology combines the power of several smaller generators to produce the output of a larger generator, providing our customers with redundancy and scalability in a cost-effective manner. For larger industrial applications, our MPS products offer customers an efficient, affordable way to scale their standby power needs, and also offer superior reliability given their built-in redundancy which allows individual units to be taken off-line for routine maintenance while retaining coverage for critical circuits.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We also offer a full line of industrial transfer switches to meet varying needs from light industrial applications all the way to the most demanding critical installations. Generac&#x2019;s industry-leading feature set and flexible platforms offer a variety of switching technologies for customized solutions to meet any project needs.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We provide a broad product line of light towers, mobile generators and mobile heaters, which provide temporary lighting, power and heat for various end markets, such as road and commercial construction, energy, mining, military and special events. We manufacture commercial mobile pumps and dust-suppression equipment for a wide variety of applications. We also manufacture various gaseous-engine control systems and accessories, which are sold to gas-engine manufacturers and aftermarket customers.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">C&amp;I products comprised 39.5%, 40.6% and 40.8% respectively, of total net sales in 2019, 2018 and 2017.<sup style="vertical-align:top;line-height:120%;font-size:pt"> </sup></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     3
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Other </i></b><b><i>P</i></b><b><i>roducts</i></b><b><i> and Services</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our &#x201c;Other Products and Services&#x201d; category primarily consists of aftermarket service parts and product accessories sold to our customers, the amortization of extended warranty deferred revenue, and the service offerings in various parts of our business, including integration, project management, remote monitoring services, and energy monitoring services.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other products comprised 8.6%, 7.9% and 7.4%, respectively, of total net sales in 2019, 2018 and 2017.<sup style="vertical-align:top;line-height:120%;font-size:pt"> </sup></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Distribution Channels and C</b><b>ustomers</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We distribute our products through a variety of different distribution channels to increase awareness of our product categories and brands, and to ensure our products reach a broad, global customer base. This distribution network includes independent residential dealers, industrial distributors and dealers, national and regional retailers, e-commerce partners, electrical, HVAC and solar wholesalers (including certain private label arrangements), catalogs, equipment rental companies, equipment distributors, and solar installers. We also sell direct to certain national and regional account customers, as well as to individual consumers, who are the end users of our products.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We believe our global distribution network is a competitive advantage that has strengthened over the years as a result of adding, expanding and developing the various distribution channels through which we sell our products. We offer a broad set of tools, programs, factory support, and leads to help our distribution partners be successful. Our network is well balanced with no customer providing more than 5% of our sales in 2019.<sup style="vertical-align:top;line-height:120%;font-size:pt"> </sup></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">At over 6,000 strong, we have the industry's largest network of factory direct independent generator dealers&#xa0;in North America.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our residential/light commercial dealer network sells, installs and services our residential and light commercial products to end users. We have increased our level of investment in recent years by focusing on a variety of initiatives to more effectively market and sell our home standby products and better align our dealer network with Generac. These initiatives have helped to improve lead quality and develop our dealers, thereby increasing close rates and lowering our cost per lead. We intend to leverage these practices to grow the rapidly developing markets for energy storage and energy monitoring.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our industrial network consists of a combination of primary distributors as well as a support network of dealers serving the global market. Over the past several years, we have been expanding our dealer network globally through acquisitions and organic means, in order to expand our international sales opportunities. The industrial distributors and dealers provide industrial and commercial end users with ongoing sales, installation and product support. Our industrial distributors and dealers help maintain the local relationships with commercial electrical contractors, specifying engineers and national account regional buying offices.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our retail distribution network includes thousands of locations across the globe and includes a variety of regional and national home improvement chains, retailers, clubs, buying groups and farm supply stores. These physical retail locations are supplemented by a growing presence of e-commerce retailers, along with a number of catalog retailers. This network primarily sells our residential standby, portable and light-commercial generators, as well as our other engine powered tools. The placement of our products at retail locations drives significant awareness for our brands and the automatic home standby product category.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our wholesaler network distributes our residential and light-commercial generators, and now our energy storage systems. The channel consists of selling branches of both national and local distribution houses for electrical, HVAC and solar products on a wholesale basis. They typically sell to electrical dealers&#xa0;and solar installers who are not in our dealer network.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On a selective basis, we have established private label and licensing arrangements with third party partners to provide residential, light-commercial and industrial generators. These partners include leading home equipment, electrical equipment and construction machinery companies, each of which provides access to incremental channels of distribution for our products.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The distribution for our C&amp;I mobile products includes international, national, regional and specialty equipment rental companies, equipment distributors and construction companies, which primarily serve non-residential building construction, road construction, energy markets and special events. In addition, international acquisitions have provided access to numerous independent distributors in over 150 countries.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We sell direct to certain national and regional account customers that are the end users of our products covering a number of end market verticals, including telecommunication, retail, banking, energy, healthcare, convenience stores, grocery stores and other light commercial applications. Additionally, our residential products are also sold direct to individual consumers, who are the end users of the product.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     4
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Business Strategy</b></p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"><br /> We have been executing on our strategic plan, which serves as the framework for the significant investments we have made to capitalize on the long-term growth prospects of Generac. Our strategic plan centers around a number of key mega-trends that we believe will drive significant secular growth opportunities for our business. Significant changes in the energy landscape, climate change, the abundance of natural gas globally, an aging infrastructure, and 5G telecommunications are all major themes that we believe will drive future long-term growth. As we continue to move our strategic plan into the future, we are focused on a number of initiatives that are driven by the following four key objectives, which are called &#x201c;Powering Our Future&#x201d;:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i><b>Growing the residential standby generator market.</b></i> As the leader in the home standby generator market, it is incumbent upon us to continue to drive growth and increase the penetration rate of these products in households across the world. Central to this strategy is to increase the awareness, availability and affordability of home standby generators. Ongoing power outage activity due to more severe weather and an aging electrical grid, combined with expanding and developing our residential/light commercial dealer base and overall distribution in affected regions, are key drivers in elevating the awareness of home standby generators over the long term. We intend to continue to supplement these key growth drivers by focusing on a variety of strategic initiatives targeted toward generating more sales leads, improving close rates and reducing the total overall cost of a home standby system. In addition, we intend to continue to focus on innovation in this growing product category and introduce new products and solutions into the marketplace. With only approximately 4.75% penetration of the addressable market of homes in the United States (which we define as single-family detached, owner-occupied households with a home value of over $125,000, as defined by the U.S. Census Bureau's 2017 American Housing Survey for the United States), we believe there are opportunities to further penetrate the residential standby generator market both domestically and internationally. As the energy landscape continues to change and favor on-site renewable power, we intend to leverage our significant experience and competencies developed over the past two decades in growing the residential standby generator market to accelerate our recent entrance into the emerging residential energy storage and monitoring markets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i><b>Gaining market share and entering new markets</b>.</i> We continue to put a strong focus on improving our share of the power equipment markets in which we participate around the world by emphasizing our innovation and continually expanding our product lines and services. We design and build a wide range of products from portable, stationary and mobile generators, light towers, mobile heaters, pumps, brush mowers and trimmers, and other engine powered equipment. We have many advantages over our competitors with strengths in our engineering, sourcing and operations capabilities as well as a global distribution network that we believe can be leveraged further for continued market share gains in the markets we serve around the world. We are also focused on expanding our addressable market opportunities by entering new markets, be it with new products or new geographies around the world.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Lead with natural gas power generation products.</i> </b>We will attempt to gain incremental market share within commercial and industrial markets through our leading position in the growing market for cleaner burning, more cost effective natural gas fueled standby power solutions. While still a smaller portion of the overall C&amp;I market, we believe demand for these products continues to increase at a faster rate than traditional diesel fueled generators as a result of their lower capital investment and operating costs. Given the abundance of natural gas as a global source for base-load power, we also intend to explore new gaseous generator related market opportunities, including increasing our product capabilities for applications beyond standby generation including continuous-duty, prime rated, distributed generation, demand response and combined heat and power. We plan to do this by leveraging our deep technical capabilities for gaseous-fueled products, leading position for natural gas standby generators and growing market acceptance for these products. As part of this strategy, we plan to continue to expand our natural gas product offering into larger power nodes to take advantage of the continuing shift from diesel to natural gas generators.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Connect with customers, partners and product. </i></b>We will work to diversify our business model from solely &#x201c;equipment centric&#x201d; to a systems and services provider through connectivity solutions and subscription based applications deployed enterprise wide. This includes an important emphasis on improving the end-user experience and helping customers to lower utility costs. The initial focus is increasing connection with our products to unlock opportunities and revenue streams. We have developed tools and programs that add value to dealers and end-users that will result in recurring revenue from subscriptions and parts. We will leverage data obtained from connected devices by developing predictive analytics that result in continuously improving product quality, sales processes and tools, energy optimization, aftermarket penetration, customer experience and alignment with dealers. Finally, we will build or acquire energy management capabilities to monetize an ecosystem of devices that relate to energy use, storage, generation, control and optimization.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Expansion globally is a core piece to the success of each of our strategic objectives. The recent acquisitions that now comprise our International segment have significantly increased our global presence by adding product, manufacturing and distribution capabilities that serve local markets around the world, and have resulted in us becoming a leading global player in the markets for backup power and mobile power equipment. As we look forward, we intend to leverage our increased international footprint attained from these acquisitions to serve the significant global markets for power generation and power storage outside the U.S. and Canada.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     5
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">See &#x201c;Item 7, Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations &#x2013; Business Drivers and Trends&#x201d; for additional drivers that influence demand for our products and other trends affecting the markets that we serve.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Manufacturing</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We operate numerous manufacturing plants, distribution facilities and inventory warehouses located throughout the world. We store finished goods at third-party logistics providers in the United States that accommodate material storage and rapid response requirements of our customers. See &#x201c;Item 2 &#x2013; Properties&#x201d; for additional details regarding the locations and activities of our principal operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In recent years, we have added manufacturing capacity through investments in automation, improved utilization and the expansion of our manufacturing footprint through organic means as well as through acquisitions. We believe we have sufficient capacity to achieve our business goals for the near-to-intermediate term.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Research and D</b><b>evelopment </b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our focus on power generation equipment, energy storage systems, and other power products drives technological innovation, specialized engineering and manufacturing competencies. Research and development (R&amp;D) is a core competency and includes a staff of over 500 engineers working on numerous projects at various facilities worldwide. These activities are focused on developing new technologies and product enhancements, as well as maintaining product competitiveness by improving manufacturing costs, safety characteristics, reliability and performance while ensuring compliance with regulatory standards. We have over 35&#xa0;years of experience using natural gas engines and have developed specific expertise with fuel systems and emissions technology. In the residential and light commercial markets, we have developed proprietary engines, cooling packages, controls, fuel systems and emissions systems. The Pika Energy and Neurio Technologies acquisitions have built out resources and expertise in the energy storage and energy monitoring markets. They provide advanced capabilities with power electronics and battery management software, along with proprietary inverter technologies and hardware and software for energy monitoring and management. We believe that our expertise in power equipment gives us the capability to develop new products that will allow continued diversification in our end markets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>I</b><b>ntellectual P</b><b>roperty</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are committed to research and development, and we rely on a combination of patents and trademarks to establish and protect our proprietary rights. Our patents protect certain features and technologies we have developed for use in our products including fuel systems, air flow, electronics and controls, noise reduction and air-cooled engines. We believe the existence of these patents and trademarks, along with our ongoing processes to register additional patents and trademarks, protect our intellectual property rights and enhance our brands and competitive position. We also use proprietary manufacturing processes that require customized equipment. With our continuous focus on research and development, we expect to develop new intellectual property on an ongoing basis.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Suppliers of Raw M</b><b>aterials</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our primary raw material inputs are steel, copper and aluminum, all of which are purchased from third parties and, in many cases, as part of machined or manufactured components. We have developed an extensive network of reliable suppliers in the United States and around the world. We believe our Strategic Global Sourcing function is a competitive strength and continuously evaluates the quality and cost structure of our purchased components and assesses the capabilities of our supply chain. Components are sourced accordingly based on this evaluation. Our supplier quality engineers conduct on-site audits of major supply chain partners and help to maintain the reliability of critical sourced components.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Competition</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The market for power generation equipment, energy storage systems, and other engine powered products is competitive. We face competition from a variety of large diversified industrial companies as well as smaller generator manufacturers, along with mobile equipment, engine powered tools, solar inverter and battery storage providers, both domestic and internationally.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Specifically in the generator market, most of the traditional participants compete on a more focused basis, targeting specific applications within their larger diversified product mix. We are the only significant market participant with a primary focus on power equipment with a key emphasis on standby, portable and mobile generators with broad capabilities across the residential, light-commercial and industrial markets. We believe that our engineering capabilities and core focus on generators provide us with manufacturing flexibility and enables us to maintain a first-mover advantage over our competition for product innovation. We also believe our broad product offering, diverse omni-channel distribution model and strong factory support provide additional advantages as well.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     6
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A summary of the primary competitors across our main product classes are as follows:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Residential </i></b><b><i>products</i></b><i> &#x2013; </i>Kohler, Briggs&#xa0;&amp; Stratton, Cummins, Honda, Champion, Techtronics International, Husqvarna, Ariens, LG Chem, Tesla, Enphase, and Solar Edge, along with a number of smaller domestic and foreign competitors; certain of which also have broad operations in other manufacturing businesses.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>C&amp;I p</i></b><b><i>roducts </i></b>&#x2013; Caterpillar, Cummins, Kohler, MTU, IGSA, Wacker, MultiQuip, Terex, Doosan, Briggs &amp; Stratton (Allmand), Atlas Copco and Himonisa; certain of which focus on the market for diesel generators as they are also diesel engine manufacturers. Also, we compete against other regional packagers that serve local markets throughout the world.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In a continuously evolving market, we believe our scale and broad capabilities make us well positioned to remain competitive. We compete primarily on the basis of brand reputation, quality, reliability, pricing, innovative features, breadth of product offering, product availability and factory support.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Employees</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of December 31, 2019, we had 5,689 employees (5,412 full time and 277 part-time and temporary employees). Of those, 2,953 employees were directly involved in manufacturing at our manufacturing facilities.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Domestically, we have had an &#x201c;open shop&#x201d; bargaining agreement for the past 50&#xa0;years. The current agreement, which expires October&#xa0;17, 2021, covers our Eagle, Wisconsin facility. Additionally, our plants in Mexico, Italy and Spain&#xa0;are operated under various local or national union groups. Our other facilities are not unionized.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Regulation, i</b><b>ncluding Environmental M</b><b>atters</b><b> </b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As a manufacturing company, our operations are subject to a variety of federal, state, local and foreign laws and regulations covering environmental, health and safety matters. Applicable laws and regulations include those governing, among other things, emissions to air, discharges to water, noise and employee safety, as well as the generation, handling, storage, transportation, treatment, and disposal of waste and other materials. In addition, our products are subject to various laws and regulations relating to, among other things, emissions and fuel requirements, as well as labeling, storage, transport, and marketing.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our products sold in the United States are regulated by the U.S. Environmental Protection Agency (EPA), California Air Resources Board (CARB) and various other state and local air quality management districts. These governing bodies continue to pass regulations that require us to meet more stringent emission standards, and all of our engines and engine-driven products are regulated within the United States and its territories. In addition, certain products in the United States are subject to safety standards as established by various other standards and rule making bodies, or state and local agencies, including the U.S. Consumer Product Safety Commission (CPSC).</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Similarly, other countries have varying degrees of regulation for our products, depending upon product application and fuel types.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Available Information</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s principal executive offices are located at S45 W29290 Highway 59, Waukesha, Wisconsin, 53189 and the Company&#x2019;s telephone number is (262) 544-4811. The Company&#x2019;s website is www.generac.com. The Company&#x2019;s annual reports on Form 10-K, quarterly reports on Form 10-Q, current reports on Form 8-K, and amendments to those reports are available free of charge through the &#x201c;Investor Relations&#x201d; portion of the Company&#x2019;s web site, as soon as reasonably practicable after they are filed with the Securities and Exchange Commission (SEC). The information provided on these websites is not part of this report and is therefore not incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Information About Our </b><b>Executive O</b><b>fficers</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth information regarding our executive officers:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:92.5%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align: top; width: 36%; border-bottom: 1px solid rgb(0, 0, 0);"><b>Name</b></td>
     <td style="vertical-align: top; width: 0.5%; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="vertical-align: top; width: 7.3%; border-bottom: 1px solid rgb(0, 0, 0);"><b>Age</b></td>
     <td style="vertical-align: top; width: 0.2%; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="vertical-align: top; width: 55.9%; border-bottom: 1px solid rgb(0, 0, 0);"><b>Position</b></td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:top;width:36%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:11pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-11pt;">Aaron P. Jagdfeld</p> </td>
     <td style="vertical-align:top;width:0.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p> </td>
     <td style="vertical-align:top;width:7.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">48</p> </td>
     <td style="vertical-align:top;width:0.2%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p> </td>
     <td style="vertical-align:top;width:55.9%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">President, Chief Executive Officer and Chairman</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:top;width:36%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:11pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-11pt;">York A. Ragen</p> </td>
     <td style="vertical-align:top;width:0.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p> </td>
     <td style="vertical-align:top;width:7.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">48</p> </td>
     <td style="vertical-align:top;width:0.2%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p> </td>
     <td style="vertical-align:top;width:55.9%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Chief Financial Officer</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:top;width:36%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:11pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-11pt;">Russell S. Minick</p> </td>
     <td style="vertical-align:top;width:0.5%;">&#xa0;</td>
     <td style="vertical-align:top;width:7.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">59</p> </td>
     <td style="vertical-align:top;width:0.2%;">&#xa0;</td>
     <td style="vertical-align:top;width:55.9%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Chief Marketing Officer</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:top;width:36%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:11pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-11pt;">Tom Pettit</p> </td>
     <td style="vertical-align:top;width:0.5%;">&#xa0;</td>
     <td style="vertical-align:top;width:7.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">51</p> </td>
     <td style="vertical-align:top;width:0.2%;">&#xa0;</td>
     <td style="vertical-align:top;width:55.9%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Chief Operations Officer</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:top;width:36%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:11pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-11pt;">Erik Wilde</p> </td>
     <td style="vertical-align:top;width:0.5%;">&#xa0;</td>
     <td style="vertical-align:top;width:7.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">45</p> </td>
     <td style="vertical-align:top;width:0.2%;">&#xa0;</td>
     <td style="vertical-align:top;width:55.9%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Executive Vice President, Industrial, Americas</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:top;width:36%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:11pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-11pt;">Patrick Forsythe</p> </td>
     <td style="vertical-align:top;width:0.5%;">&#xa0;</td>
     <td style="vertical-align:top;width:7.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">52</p> </td>
     <td style="vertical-align:top;width:0.2%;">&#xa0;</td>
     <td style="vertical-align:top;width:55.9%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Executive Vice President, Global Engineering</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     7
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Aaron P. Jagdfeld</b> has served as our Chief Executive Officer since September 2008, as a director since November 2006 and was named Chairman in February 2016. Prior to becoming Chief Executive Officer, Mr.&#xa0;Jagdfeld worked for Generac for 15&#xa0;years. He began his career in the finance department in 1994 and became our Chief Financial Officer in 2002. In 2007, he was appointed President and was responsible for sales, marketing, engineering and product development. Prior to joining Generac, Mr.&#xa0;Jagdfeld worked in the audit practice of the Milwaukee, Wisconsin office of Deloitte and Touche. Mr.&#xa0;Jagdfeld holds a Bachelor of Business Administration in Accounting from the University of Wisconsin-Whitewater.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>York A. Ragen</b> has served as our Chief Financial Officer since September 2008. Prior to becoming Chief Financial Officer, Mr.&#xa0;Ragen held Director of Finance and Vice President of Finance positions at Generac. Prior to joining Generac in 2005, Mr.&#xa0;Ragen was Vice President, Corporate Controller at APW&#xa0;Ltd., a spin-off from Applied Power&#xa0;Inc., now known as Enerpac Tool Group. Mr.&#xa0;Ragen began his career at Arthur Andersen in the Milwaukee, Wisconsin office audit practice. Mr.&#xa0;Ragen holds a Bachelor of Business Administration in Accounting from the University of Wisconsin-Whitewater.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Russell S. Minick </b>began serving as our Chief Marketing Officer in August 2016. Prior to his appointment, he served as our Executive Vice President, Residential Products since October 2011, with this responsibility being expanded in January 2014 to Executive Vice President, Global Residential Products and to Executive Vice President, North America in September 2014.&#xa0;Prior to joining Generac, Mr. Minick was President &amp; CEO of Home Care Products for Electrolux from 2006 to 2011, President of The Gunlocke Company at HNI Corporation from 2003 to 2006, Senior Vice President of Sales, Marketing and Product Development at True Temper Sports from 2002 to 2003, and General Manager of Extended Warranty Operations for Ford Motor Company from 1998 to 2002. Mr. Minick is a graduate of the University of Northern Iowa, and holds a degree in marketing.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Tom Pettit</b> began serving as our Chief Operations Officer in February 2020. Since 2017, Mr. Pettit was Executive Vice President and Chief Integrated Supply Chain Officer of nVent Electric plc, a leading global provider of electrical connection and protection solutions and a former subsidiary of Pentair plc (&#x201c;Pentair&#x201d;), a global industrial company. Mr. Pettit previously served as the Operations Vice President of Pentair since 2015, and as the Chief Operating Officer for BioScrip, Inc., a provider of infusion and home care management solutions, from 2014-2015. Mr. Pettit holds a B.S. in General Engineering from West Point Military Academy and an MBA from the University of Hawaii.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Erik Wilde</b> began serving as our Executive Vice President, Industrial, Americas in July 2016. Mr. Wilde was Vice President and General Manager of the Mining Division for Komatsu America Corp., a manufacturer of construction, mining, and compact construction equipment, from 2013 until he joined Generac. Prior to that role, he held leadership positions as Vice President of the ICT Business Division and Product Marketing at Komatsu America Corp. beginning in 2005. Mr. Wilde holds a Bachelor of Business Administration in Management from Boise State University and an M.B.A. from Keller Graduate School of Management.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Patrick Forsythe </b>has served as our Executive Vice President of Global Engineering since re-joining Generac in July 2015. Mr. Forsythe was Vice President, Global Engineering &amp; Technology of Hayward Industries, a producer of residential and commercial pool and spa equipment, from 2008 to 2015, Vice President, Global Engineering at Ingersoll Rand Company (and the acquired Doosan Infracore International) from 2004 to 2008, and Director of Engineering at Ingersoll Rand Company from 2002 to 2004. Prior to 2002, Mr. Forsythe worked in various engineering management capacities with Generac from 1995 to 2002. Mr. Forsythe holds a Higher National Diploma (HND) in Mechanical Engineering from the University of Ulster (United Kingdom), a B.S. in Mechanical Engineering, and an M.S. in Manufacturing Management &amp; Technology from The Open University (United Kingdom).</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item1a" href=""></a>Item 1A. Risk Factors</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">You should carefully consider the following risks. These risks could materially affect our business, results of operations or financial condition, cause the trading price of our common stock to decline materially or cause our actual results to differ materially from those expected or those expressed in any forward-looking statements made by us. These risks are not exclusive, and additional risks to which we are subject include, but are not limited to, the factors mentioned under &#x201c;Forward-Looking Statements&#x201d; and the risks of our businesses described elsewhere in this Annual Report.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     8
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Risk factors r</b><b>elated to our business and industry</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Demand for </i></b><b><i>the majority of </i></b><b><i>our products is significantl</i></b><b><i>y affected by unpredictable</i></b><b><i> power </i></b><b><i>outage</i></b><b><i> activity</i></b><b><i> that can lead to substantial variations in, and uncertainties regarding, our financial results from period to period.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Sales of our products are subject to consumer buying patterns, and demand for the majority of our products is affected by power outage events caused by thunderstorms, hurricanes, ice storms, blackouts, public safety power shutoffs, and other power grid reliability issues. The impact of these outage events on our sales can vary depending on the location, frequency and severity of the outages. Sustained periods without major power disruptions can lead to reduced consumer awareness of the benefits of standby and portable generator products and can result in reduced sales growth rates and excess inventory. There are smaller, more localized power outages that occur frequently that drive a baseline level of demand for back-up power solutions. The lack of major power outage events and fluctuations to the baseline levels of power outage activity are part of managing our business, and these fluctuations could have an adverse effect on our net sales and profits. Despite their unpredictable nature, we believe power disruptions create awareness and accelerate adoption for our home standby products.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Demand for our products is significantly affected by durable goods spending by consumers and businesses</i></b><b><i>,</i></b><b><i> and other macroeconomic conditions.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our business is affected by general economic conditions, and uncertainty or adverse changes such as the prolonged downturn in U.S. residential investment and the impact of more stringent credit standards could lead to a decline in demand for our products and pressure to reduce our prices. Our sales of light-commercial and industrial generators are affected by conditions in the non-residential construction sector and by the capital investment trends for small and large businesses and municipalities. If these businesses and municipalities cannot access credit markets or do not utilize discretionary funds to purchase our products as a result of the economy or other factors, our business could suffer and our ability to realize benefits from our strategy of increasing sales in the light-commercial and industrial sectors through, among other things, our focus on innovation and product development, including natural gas engine and modular technology, could be adversely affected. In addition, consumer confidence and home remodeling expenditures have a significant impact on sales of our residential products, and prolonged periods of weakness in consumer durable goods spending could have a material impact on our business. Typically, we do not have contracts with our customers which call for committed volume, and we cannot guarantee that our current customers will continue to purchase our products at the same level, if at all. If general economic conditions or consumer confidence were to worsen, or if the non-residential construction sector or rate of capital investments were to decline, our net sales and profits would likely be adversely affected. Additionally, timing of capital spending by our national account customers can vary from quarter-to-quarter based on capital availability and internal capital spending budgets. Also, the availability of renewable energy mandates and investment tax credits and other subsidies can have an impact on the demand for energy storage systems.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Decreases in the availability and quality, or increases in the cost, of raw materials</i></b><b><i>,</i></b><b><i> key components </i></b><b><i>and labor </i></b><b><i>we use could materially reduce our earnings.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The principal raw materials that we use to produce our products are steel, copper and aluminum. We also source a significant number of component parts from third parties that we utilize to manufacture our products. The prices of those raw materials and components are susceptible to significant fluctuations due to trends in supply and demand, commodity prices, currencies, transportation costs, government regulations and tariffs, price controls, economic conditions and other unforeseen circumstances beyond our control. We do not have long-term supply contracts in place to ensure the raw materials and components we use are available in necessary amounts or at fixed prices. If we are unable to mitigate raw material or component price increases through product design improvements, price increases to our customers, manufacturing productivity improvements, or hedging transactions, our profitability could be adversely affected. Also, our ability to continue to obtain quality materials and components is subject to the continued reliability and viability of our suppliers, including in some cases, suppliers who are the sole source of certain important components, including diesel engines. If we are unable to obtain adequate, cost efficient or timely deliveries of required raw materials and components, or sufficient labor resources, we may be unable to manufacture sufficient quantities of products on a timely basis. This could cause us to lose sales, incur additional costs, delay new product introductions or suffer harm to our reputation. For example, in December 2019, a strain of coronavirus was reported to have surfaced in Wuhan, China, resulting in temporary closures or production delays at certain of our suppliers. At this point, the extent to which the coronavirus may impact our results is uncertain.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>The industry in which we compete is highly competitive, and our failure to compete successfully </i></b><b><i>could adversely affect our results of operations and financial condition.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We operate in markets that are highly competitive. Some of our competitors have established brands and are larger in size or are divisions of large diversified companies which have substantially greater financial resources than we do. Some of our competitors may be willing to reduce prices and accept lower margins in order to compete with us. In addition, we could face new competition from large international or domestic companies with established industrial brands that enter our end markets. Demand for our products may also be affected by our ability to respond to changes in design and functionality, to respond to downward pricing pressure, and to provide shorter lead times for our products than our competitors. If we are unable to respond successfully to these competitive pressures, we could lose market share, which could have an adverse impact on our results. For further information, see &#x201c;Item 1&#x2014;Business&#x2014;Competition&#x201d;.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     9
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Our industry is subject to te</i></b><b><i>chnological change, and our failure to continue developing new and improved products and to bring these products rapidly to market could have an adverse impact on our business.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">New products, or refinements and improvements of existing products, may have technical failures, delayed introductions, higher than expected production costs or may not be well accepted by our customers. If we are not able to anticipate, identify, develop and market high quality products in line with technological advancements that respond to changes in customer preferences, demand for our products could decline and our operating results could be adversely affected.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We rely on independent dealers and distribution partners, and the loss of these dealers and distribution partners, or of any of our sales arrangements with significant private label, </i></b><b><i>national</i></b><b><i>, retail or equipment rental customers, would adversely affect our business.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition to our direct sales force and manufacturer sales representatives, we depend on the services of independent distributors and dealers to sell our products and provide service and aftermarket support to our end customers. We also rely upon our distribution channels to drive awareness for our product categories and our brands. In addition, we sell our products to end users through private label arrangements with leading home equipment, electrical equipment and construction machinery companies; arrangements with top retailers and equipment rental companies; and our direct national accounts with telecommunications and industrial customers. Our distribution agreements and any contracts we have with large national, retail and other customers are typically not exclusive, and many of the distributors with whom we do business offer competitors&#x2019; products and services. Impairment of our relationships with our distributors, dealers or large customers, loss of a substantial number of these distributors or dealers or of one or more large customers, or an increase in our distributors' or dealers' sales of our competitors' products to our customers or of our large customers' purchases of our competitors' products could materially reduce our sales and profits. Also, our ability to successfully realize our growth strategy is dependent in part on our ability to identify, attract and retain new distributors at all layers of our distribution platform, including increasing the number of energy storage distributors, and we cannot be certain that we will be successful in these efforts. For further information, see &#x201c;Item 1&#x2014;Business&#x2014;Distribution Channels and Customers&#x201d;.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Our business could be negatively impacted if we fail to adequately protect our intellectual property rights or if third parties claim that we are in violation of their intellectual property rights.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We consider our intellectual property rights to be important assets, and seek to protect them through a combination of patent, trademark, copyright and trade secret laws, as well as licensing and confidentiality agreements. These protections may not be adequate to prevent third parties from using our intellectual property without our authorization, breaching any confidentiality agreements with us, copying or reverse engineering our products, or developing and marketing products that are substantially equivalent to or superior to our own. The unauthorized use of our intellectual property by others could reduce our competitive advantage and harm our business. Not only are intellectual property-related proceedings burdensome and costly, but they could span years to resolve and we might not ultimately prevail. We cannot guarantee that any patents, issued or pending, will provide us with any competitive advantage or will not be challenged by third parties. Moreover, the expiration of our patents may lead to increased competition with respect to certain products.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition, we cannot be certain that we do not or will not infringe third parties' intellectual property rights. Any such claim, even if it is without merit, may be expensive and time-consuming to defend, subject us to damages, cause us to cease making, using or selling certain products that incorporate the disputed intellectual property, require us to redesign our products, divert management time and attention, and/or require us to enter into costly royalty or licensing arrangements.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Our operations are subject to various environmental, health and safety laws and regulations, and non-compliance with or liabilities under such laws and regulations could result in substantial costs, fines, sanctions and claims.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our operations are subject to a variety of foreign, federal, state and local environmental, health and safety laws and regulations including those governing, among other things, emissions to air; discharges to water; noise; and the generation, handling, storage, transportation, treatment and disposal of waste and other materials. In addition, under federal and state environmental laws, we could be required to investigate, remediate and/or monitor the effects of the release or disposal of materials both at sites associated with past and present operations and at third-party sites where wastes generated by our operations were disposed. This liability may be imposed retroactively and whether or not we caused, or had any knowledge of, the existence of these materials and may result in our paying more than our fair share of the related costs. We could also be subject to a recall action by regulatory authorities. Violations of or liabilities under such laws and regulations could result in substantial costs, fines and civil or criminal proceedings or personal injury and workers' compensation claims.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     10
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Our products are subject to substantial government regulation.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our products are subject to extensive statutory and regulatory requirements governing, among other things, emissions, noise, labeling, transport, product content, and data privacy, including standards imposed by the EPA, CARB and other regulatory agencies around the world. Also, as we increase our connectivity with our products and customers, we may be required to comply with additional data privacy and cybersecurity regulations. These laws are constantly evolving and many are becoming increasingly stringent. Changes in applicable laws or regulations, or in the enforcement thereof, could require us to redesign our products and could adversely affect our business or financial condition in the future. Developing and marketing products to meet such new requirements could result in substantial additional costs that may be difficult to recover in some markets. In some cases, we may be required to modify our products or develop new products to comply with new regulations, particularly those relating to air emissions and carbon monoxide. Typically, additional costs associated with significant compliance modifications are passed on to the market. While we have been able to meet previous deadlines and requirements, failure to comply with other existing and future regulatory standards could adversely affect our position in the markets we serve.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>W</i></b><b><i>e may incur costs and liabilities as a result o</i></b><b><i>f product liability </i></b><b><i>claims.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We face a risk of exposure to product liability claims in the event that the use of our products is alleged to have resulted in injury or other damage. Although we currently maintain product liability insurance coverage, we may not be able to obtain such insurance on acceptable terms in the future, if at all, or obtain insurance that will provide adequate coverage against potential claims. Product liability claims can be expensive to defend and can divert the attention of management and other personnel for long periods of time, regardless of the ultimate outcome. A significant unsuccessful product liability defense could have a material adverse effect on our financial condition and results of operations. In addition, we believe our business depends on the strong brand reputation we have developed. If our reputation is damaged, we may face difficulty in maintaining our market share and pricing with respect to some of our products, which could reduce our sales and profitability.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>The loss of any key members of our senior management team or key employees could disrupt our operations and harm our business.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our success depends, in part, on the efforts of certain key individuals, including the members of our senior management team, who have significant experience in the power products industry. If, for any reason, our senior executives do not continue to be active in management, or if our key employees leave our company, our business, financial condition or results of operations could be adversely affected. Failure to continue to attract these individuals at reasonable compensation levels could have a material adverse effect on our business, liquidity and results of operations. Although we do not anticipate that we will have to replace any of these individuals in the near future, the loss of the services of any of our key employees could disrupt our operations and have a material adverse effect on our business.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Disruptions caused by labor dis</i></b><b><i>putes or organized labor activities could harm our business.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We may from time to time experience union organizing activities in our non-union facilities. Disputes with the current labor union or new union organizing activities could lead to work slowdowns or stoppages and make it difficult or impossible for us to meet scheduled delivery times for product shipments to our customers, which could result in loss of business. In addition, union activity could result in higher labor costs, which could harm our financial condition, results of operations and competitive position. A work stoppage or limitations on production at our facilities for any reason could have an adverse effect on our business, results of operations and financial condition. In addition, many of our suppliers have unionized work forces. Strikes or work stoppages experienced by our customers or suppliers could have an adverse effect on our business, results of operations and financial condition.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We may experience material disruptions to our manufacturing operations.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">While we seek to operate our facilities in compliance with applicable rules and regulations and take measures to minimize the risks of disruption at our facilities, a material disruption at one of our manufacturing facilities could prevent us from meeting customer demand, reduce our sales and/or negatively impact our financial results. Any of our manufacturing facilities, or any of our equipment within an otherwise operational facility, could cease operations unexpectedly due to a number of events, including:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">equipment or information technology infrastructure failure;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">disruptions in the transportation infrastructure including roads, bridges, railroad tracks and container ports;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">fires, floods, tornadoes, earthquakes, or other catastrophes; and&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">other operational problems.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:72pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     11
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition, a significant portion of our manufacturing and production facilities are located in Wisconsin within a 100-mile radius of each other. We could experience prolonged periods of reduced production due to unforeseen events occurring in or around our manufacturing facilities in Wisconsin. In the event of a business interruption at our facilities, in particular our Wisconsin facilities, we may be unable to shift manufacturing capabilities to alternate locations, accept materials from suppliers or meet customer shipment needs, among other severe consequences. Such an event could have a material and adverse impact on our financial condition and results of our operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>A significant portion of our purchased components are sourced in foreign countries, exposing us to additional risks that may not exist in the United States.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We source a significant portion of our purchased components overseas, primarily in Asia and Europe. Our international sourcing subjects us to a number of potential risks in addition to the risks associated with third-party sourcing generally. Such risks include:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">inflation or changes in political and economic conditions;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">unstable regulatory environments;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">changes in import and export duties;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">domestic and foreign customs and tariffs;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">currency rate fluctuations;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">trade restrictions;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">labor unrest;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">logistical challenges, including extended container port congestion, and higher logistics costs;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">communications challenges; and&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">other restraints and burdensome taxes.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:72pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">These factors may have an adverse effect on our ability to efficiently and cost effectively source our purchased components overseas. In particular, if the U.S. dollar were to depreciate significantly against the currencies in which we purchase raw materials from foreign suppliers, our cost of goods sold could increase materially, which would adversely affect our results of operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We are vulnerable to supply disruptions from single-sourced suppliers. </i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We single-source certain types of parts in our product designs. Any delay in our suppliers&#x2019; deliveries may impair our ability to deliver products to our customers. A wide variety of factors could cause such delays including, but not limited to, lack of capacity, economic downturns, availability of credit, logistical challenges, weather events or natural disasters.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>As a U.S. corporation that conducts business in</i></b><b><i> a variety of foreign countries</i></b><b><i>, we are subject to the Foreign Corrupt Practice</i></b><b><i>s Act and a variety of anti-corruption laws worldwide. A determination that we violated any of these laws may affect our business and operations adversely.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The U.S. Foreign Corrupt Practices Act (FCPA) generally prohibits U.S. companies and their intermediaries from making improper payments to foreign officials for the purpose of obtaining or keeping business. The United Kingdom Bribery Act (UKBA) prohibits domestic and foreign bribery of the private sector as well as public officials. Any determination that we have violated any anti-corruption laws could have a material adverse effect on our financial position, operating results and cash flows.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Policy changes affecting international trade could adversely impact the demand for our products and our competitive position.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Changes in government policies on foreign trade and investment can affect the demand for our products, impact the competitive position of our products or prevent us from being able to sell products in certain countries. Our business benefits from free trade agreements, and efforts to withdraw from, or substantially modify such agreements, in addition to the implementation of more restrictive trade policies, such as more detailed inspections, higher tariffs, import or export licensing requirements, exchange controls or new barriers to entry, could have a material adverse effect on our results of operations, financial condition or cash flows. For example, starting in 2018 and continuing through 2019, we experienced increased tariffs on many of our products and product components, although these tariffs did not ultimately have a material adverse effect on our results due to the implementation of various mitigation efforts in conjunction with our supply chain and end market partners.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Additionally, the United Kingdom&#x2019;s exit from EU membership, and discussions regarding its exit from the EU, have caused and may continue to cause significant volatility in global stock markets, currency exchange rate fluctuations and global economic uncertainty. Although it is unknown what the terms of the United Kingdom&#x2019;s future relationship with the EU will be, it is possible that there will be greater restrictions on imports and exports between the United Kingdom and EU and increased regulatory complexities. Any of these factors could adversely impact customer demand, our relationships with customers and suppliers and our results of operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     12
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Our total assets include goodwill and other indefinite-lived intangibles. If we determine these have become impaired, </i></b><b><i>our </i></b><b><i>net income could be materially adversely affected.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Goodwill represents the excess of cost over the fair market value of net assets acquired in business combinations. Indefinite-lived intangibles are comprised of certain tradenames. At December 31, 2019, goodwill and other indefinite-lived intangibles totaled $933.6 million. We review goodwill and other intangibles at least annually for impairment and any excess in carrying value over the estimated fair value is charged to the statement of comprehensive income. Future impairment may result from, among other things, deterioration in the performance of an acquired business or product line, adverse market conditions and changes in the competitive landscape, adverse changes in applicable laws or regulations, including changes that restrict the activities of an acquired business or product line, and a variety of other circumstances. A reduction in net income resulting from the write-down or impairment of goodwill or indefinite-lived intangibles could have a material adverse effect on our financial statements. Refer to the Critical Accounting Policies in Item 7 of this Annual Report on Form 10-K for further information regarding the Company&#x2019;s process for evaluating its goodwill for impairment.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We are unable to determine the specific impact of changes in selling prices or changes in volumes</i></b><b><i> or mix</i></b><b><i> of our products on our net sales.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Because of the wide range of products that we sell, the level of customization for many of our products, the frequent rollout of new products, the different accounting systems utilized, and the fact that we do not apply pricing changes uniformly across our entire portfolio of products, we are unable to determine with specificity the effect of volume or mix changes or changes in selling prices on our net sales.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We may not realize all of the anticipated benefits of our acquisitions or those benefits may take longer to realize than expected. We may also encounter significant unexpected difficulties in integrating acquired businesses.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our ability to realize the anticipated benefits of our acquisitions will depend, to a large extent, on our ability to integrate the acquired businesses with our business. The integration of independent businesses is a complex, costly and time-consuming process. Further, integrating and managing businesses with international operations may pose challenges not previously experienced by our management. As a result, we may be required to devote significant management attention and resources to integrating the business practices and operations of any acquired businesses with ours. The integration process may disrupt our business and, if implemented ineffectively, could preclude realization of the full benefits expected by us. Our failure to meet the challenges involved in integrating an acquired business into our existing operations or otherwise to realize the anticipated benefits of the transaction could cause an interruption of, or a loss of momentum in, our activities and could adversely affect our results of operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition, the overall integration of our acquired businesses may result in material unanticipated problems, expenses, liabilities, competitive responses, loss of customer relationships, and diversion of management's attention, and may cause our stock price to decline. The difficulties of combining the operations of acquired businesses with ours include, among others:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">managing a larger company;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">maintaining employee morale and retaining key management and other employees;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">complying with newly applicable foreign regulations;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">integrating two business cultures, which may prove to be incompatible;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">the possibility of faulty assumptions underlying expectations regarding the integration process;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">retaining existing customers and attracting new customers;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">consolidating corporate and administrative infrastructures and eliminating duplicative operations;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">the diversion of management's attention from ongoing business concerns and performance shortfalls as a result of the diversion of management's attention to the acquisition;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">unanticipated issues in integrating information technology, communications and other systems;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">unanticipated changes in applicable laws and regulations;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">managing tax costs or inefficiencies associated with integrating the operations of the combined company;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">unforeseen expenses or delays associated with the acquisition;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">difficulty comparing financial reports due to differing financial and/or internal reporting systems; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">making any necessary modifications to internal financial control standards to comply with the Sarbanes-Oxley Act of 2002 and the rules and regulations promulgated thereunder.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:36pt;margin-right:0pt;margin-top:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     13
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Many of these factors will be outside of our control and any one of them could result in increased costs, decreases in the amount of expected revenues and diversion of management's time and energy, which could materially impact our business, financial condition and results of operations. In addition, even if the operations of our acquired businesses are integrated successfully with our operations, we may not realize the full benefits of the transaction, including the synergies, cost savings or sales or growth opportunities that we expect. These benefits may not be achieved within the anticipated time frame, or at all. Or, additional unanticipated costs may be incurred in the integration of our businesses. All of these factors could cause dilution to our earnings per share, decrease or delay the expected accretive effect of the acquisition, and cause a decrease in the price of our common stock. As a result, we cannot assure you that the combination of our acquisitions with our business will result in the realization of the full benefits anticipated from the transaction.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We may encounter difficulties in</i></b><b><i> operating or</i></b><b><i> implementing a new enterprise resource planning (ERP) system</i></b><b><i> across our subsidiaries</i></b><b><i>, which may adversely affect our operations and financial reporting.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Over the past four years, we have implemented a new ERP system for a majority of our business as part of our ongoing efforts to improve and strengthen our operational and financial processes and our reporting systems. We expect to implement the new ERP system at our other locations in future years. The ERP system may not provide the benefits anticipated, could add costs and complications to ongoing operations, and may impact our ability to process transactions efficiently, all of which may have a material adverse effect on the Company&#x2019;s business and results of operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Failures or security breaches of our networks or information technology systems could have an adverse effect on our business</i></b><b><i>.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We rely heavily on information technology (IT)&#xa0;both in our products and services for customers and in our IT systems. Further, we collect and store sensitive information in our data centers and on our networks. Government agencies and security experts have warned about growing risks of hackers, cyber-criminals, malicious insiders and other actors targeting confidential information and all types of IT systems. These actors may engage in fraudulent activities, theft of confidential or proprietary information and sabotage.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our IT systems, our connected products, and our confidential information may be vulnerable to damage or intrusion from a variety of attacks including computer viruses, worms or other malicious software programs. The risk of such attacks may increase as we integrate newly acquired companies or develop new connected products and related software. These attacks pose a risk to the security of our products, systems and networks and those of our customers, suppliers and third-party service providers, as well as to the confidentiality of our information and the integrity and availability of our data. While we attempt to mitigate these risks through board oversight, controls, due diligence, employee training and communication, third party intrusion testing, system hardening, email and web filters, regular patching, surveillance, encryption, and other measures, we remain vulnerable to information security threats</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Despite the precautions we take, an intrusion or infection of our systems or connected products could result in the disruption of our business, or a loss of proprietary or confidential information. Similarly, an attack on our IT systems or connected products could result in theft or disclosure of trade secrets or other intellectual property, a breach of confidential customer or employee information, or product failure or misuse. Any such events could have an adverse impact on sales, harm our reputation and cause us to incur legal liability and increased costs to address such events and related security concerns. As the threats evolve and become more potent, we may incur additional costs to secure the products that we sell, as well as our data and infrastructure of networks and devices.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i><b>Certain current favorable tax attributes may no longer be realized in the future, resulting in less cash on hand available to invest in other business activities.</b></i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of December 31, 2019, we had approximately $225 million of tax-deductible goodwill and intangible asset amortization remaining from our acquisition by CCMP Capital Advisors, LLC in 2006 that we expect to generate aggregate cash tax savings of approximately $57 million through 2021, assuming continued profitability of our U.S. business and a combined federal and state tax rate of 25.3%. The recognition of the tax benefit associated with these assets for tax purposes is expected to be $122 million annually in 2020 and $102 million in 2021, which generates annual cash tax savings of $31 million in 2020 and $26 million in 2021. Based on current business plans, we believe that our cash tax obligations through 2021 will be significantly reduced by these tax attributes, after which our cash tax obligation will increase. Other domestic acquisitions have resulted in additional tax deductible goodwill and intangible assets that will generate tax savings, but are not material to the Company&#x2019;s consolidated financial statements.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Risks related to our common stock </b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>If securities or industry analysts do not publish research or reports about our business, if they adversely change their recommendations regarding our common stock or if our results of operations do not meet their expectations, our common stock price and trading volume could decline.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The trading market for our common stock will be influenced by the research and reports that industry or securities analysts publish about us or our business. If one or more of these analysts cease coverage of our company or fail to publish reports on us regularly, we could lose visibility in the financial markets, which in turn could cause our stock price or trading volume to decline. Moreover, if one or more of the analysts who cover us downgrade recommendations regarding our stock, or if our results of operations do not meet their expectations, our stock price could decline and such decline could be material.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     14
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Anti-takeover provisions in our amended and restated certificate of incorporation and by-laws could prohibit a change of control that our stockholders may favor and could negatively affect our stock price.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Provisions in our amended and restated certificate of incorporation and by-laws may make it more difficult and expensive for a third party to acquire control of us even if a change of control would be beneficial to the interests of our stockholders. These provisions could discourage potential takeover attempts and could adversely affect the market price of our common stock. These provisions may also prevent or frustrate attempts by our stockholders to replace or remove our management. For example, our amended and restated certificate of incorporation and by-laws:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:36pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">permit our Board of Directors to issue preferred stock with such terms as they determine, without stockholder approval;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">provide that only one-third of the members of the Board of Directors are elected at each stockholders meeting and prohibit removal without cause;&#xa0;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">require advance notice for stockholder proposals and director nominations; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">contain limitations on convening stockholder meetings.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:54pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">These provisions make it more difficult for stockholders or potential acquirers to acquire us without negotiation and could discourage potential takeover attempts and could adversely affect the market price of our common stock.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>We do not</i></b><b><i> </i></b><b><i>have</i></b><b><i> </i></b><b><i>plans to pay</i></b><b><i> </i></b><b><i>dividends on our common stock in the foreseeable future.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We currently do not have plans to pay dividends in the foreseeable future on our common stock. We intend to use future earnings for the operation and expansion of our business, as well as for repayment of outstanding debt, acquisitions, and for share repurchases. In addition, the terms of our senior secured credit facilities limit our ability to pay dividends on our common stock. As a result, capital appreciation, if any, of our common stock will be the sole source of gain for the foreseeable future. While we may change this policy at some point in the future, we cannot assure you that we will make such a change.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Risks related to our capital structure</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We hav</i></b><b><i>e</i></b><b><i> indebtedness which could adversely affect our cash flow and our ability to make payments on our indebtedness.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of December 31, 2019 we had total indebtedness of $898.9 million. Our level of indebtedness increases the possibility that we may be unable to generate cash sufficient to pay, when due, the principal of, interest on or other amounts due in respect of our indebtedness. While we maintain interest rate swaps covering a portion of our outstanding debt, our interest expense could increase if interest rates increase because debt under our credit facilities bears interest at a variable rate based on LIBOR or other base rate. In connection with our term loan amendment in December 2019, language was added to the agreement to include a benchmark replacement rate, selected by the administrative agent and the borrower, as a replacement to LIBOR that would take affect at the time LIBOR ceases. The Company plans to work with its lenders in the near future to amend other LIBOR based debt agreements to add a replacement rate should the use of LIBOR cease. If we do not have sufficient earnings to service our debt, we may be required to refinance all or part of our existing debt, sell assets, borrow more money or sell securities, none of which we can guarantee we will be able to do.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>The terms of our credit facilities restrict our current and future operations, particularly our ability to respond to changes in our business or to take certain actions.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our credit facilities contain, and any future indebtedness of ours or our subsidiaries would likely contain, a number of restrictive covenants that impose significant operating and financial restrictions on us and our subsidiaries, including restrictions on our ability to engage in acts that may be in our best long-term interests. These restrictions include, among other things, our ability to:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">incur liens;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">incur or assume additional debt or guarantees or issue preferred stock;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">pay dividends, or make redemptions and repurchases, with respect to capital stock;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">prepay, or make redemptions and repurchases of, subordinated debt;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">make loans and investments;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">make capital expenditures;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">engage in mergers, acquisitions, asset sales, sale/leaseback transactions and transactions with affiliates;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">change the business conducted by us or our subsidiaries; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">amend the terms of subordinated debt.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The operating and financial restrictions in our credit facilities and any future financing agreements may adversely affect our ability to finance future operations or capital needs or to engage in other business activities. A breach of any of the restrictive covenants in our credit facilities would result in a default. If any such default occurs, the lenders under our credit facilities may elect to declare all outstanding borrowings, together with accrued interest and other fees, to be immediately due and payable, or enforce their security interest, any of which would result in an event of default. The lenders will also have the right in these circumstances to terminate any commitments they have to provide further borrowings. Our existing credit facilities do not contain any financial maintenance covenants.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     15
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>We may need additional capital to finance our growth strategy or to refinance our existing credit facilities, and we may not be able to obtain it on acceptable terms, or at all, which may limit ou</i></b><b><i>r ability to grow.</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We may require additional financing to expand our business. Financing may not be available to us or may be available to us only on terms that are not favorable. The terms of our senior secured credit facilities limit our ability to incur additional debt. In addition, economic conditions, including a downturn in the credit markets, could impact our ability to finance our growth on acceptable terms or at all. If we are unable to raise additional funds or obtain capital on acceptable terms, we may have to delay, modify or abandon some or all of our growth strategies. In the future, if we are unable to refinance our credit facilities on acceptable terms, our liquidity could be adversely affected.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item1b" href=""></a>Item&#xa0;1B. Unresolved Staff Comments</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">None.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item2" href=""></a>Item&#xa0;2. Properties</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We own or lease manufacturing, distribution and office facilities globally totaling over five million square feet. We also have inventory warehouses that accommodate material storage and rapid response requirements of our customers. The following table provides information about our principal facilities exceeding 20,000 square feet:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
   <tbody>
    <tr>
     <td style="vertical-align: bottom; width: 32%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Location</b></p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Owned/ </b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Leased</b></p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Activities</b></p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Segment</b></p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Waukesha, WI</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Corporate headquarters, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Eagle, WI</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, training</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Whitewater, WI</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, distribution</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Oshkosh, WI</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, warehouse, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;">Berlin, WI&#xa0;</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;">Owned</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;">Manufacturing, office, warehouse, R&amp;D</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;">Domestic</td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Jefferson, WI</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, distribution, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;">Janesville, WI</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;">Leased</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;">Distribution</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;">Domestic</td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;">Various WI</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;">Leased</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;">Warehouse</td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;">Domestic</td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Maquoketa, IA</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Storage, rental property</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">South Burlington, VT</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Leased</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Office</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Domestic</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Mexico City, Mexico</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, sales, distribution, warehouse, office, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Mexico City, Mexico</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Leased</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Storage,&#xa0;warehouse&#xa0;</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">San Mateo Cuautepec, Mexico</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Leased</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Storage, manufacturing</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Hidalgo, Mexico</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, sales, distribution, warehouse, office, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Milan, Italy</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Leased</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, sales, distribution, warehouse, office, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Casole d&#x2019;Elsa, Italy</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Leased</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, warehouse, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Balsicas, Spain</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Leased</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, warehouse, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: top; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Foshan, China</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Owned</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, warehouse, R&amp;D</p> </td>
     <td style="vertical-align: top; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Saint-Nizier-sous-Charlieu, France</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Leased</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Sales, office, warehouse</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Ribeirao Preto, Brazil</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Leased</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, warehouse</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Stoke-on-Trent, United Kingdom</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Leased</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Sales, office, warehouse</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Sydney, Australia</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Leased</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Sales, office, warehouse</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Celle, Germany</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Owned</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, office, warehouse, R&amp;D</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Charzyno, Poland</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Owned</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align: bottom; width: 32%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">West Bengal, India</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Leased</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 45%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Manufacturing, warehouse</p> </td>
     <td style="vertical-align: bottom; width: 1%;">&#xa0;</td>
     <td style="vertical-align: top; width: 10%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">International</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition to the countries represented above, the Company has other operations or sales offices in the United Arab Emirates, Singapore, Canada and the Dominican Republic, as well as several other countries throughout Europe.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of December 31, 2019, substantially all of our domestically-owned and a portion of our internationally-owned properties are subject to collateral provisions under our senior secured credit facilities.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     16
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item3" href=""></a>Item&#xa0;3. Legal Proceedings</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">From time to time, we are involved in legal proceedings primarily involving product liability, employment matters and general commercial disputes arising in the ordinary course of our business. As of December 31, 2019, we believe that there is no litigation pending that would have a material effect on our results of operations or financial condition.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item4" href=""></a>Item&#xa0;4. Mine Safety Disclosures</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Not Applicable.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;"><b><a id="part2" href=""></a>PART II</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:34.55pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-34.55pt;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:34.55pt;margin-right:0pt;margin-top:0pt;text-align:justify;text-indent:-34.55pt;"><b><a id="item5" href=""></a>Item&#xa0;5. Market for Registrant&#x2019;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Shares of our common stock are traded on the New York Stock Exchange (NYSE) under the symbol &#x201c;GNRC.&#x201d;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Purchases of Equity Securities By the Issuer and Affiliated Purchasers</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table summarizes the stock repurchase activity for the three months ended December&#xa0;31, 2019, which consisted of the withholding of shares upon the vesting of restricted stock awards to pay related withholding taxes on behalf of the recipient:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Total Number of Shares Purchased</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Average Price Paid per Share</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Total Number</b><b> Of </b><b>Shares</b><b> Purchased </b><b>As</b><b> </b><b>Part Of</b><b> </b><b>Publicly</b><b> </b><b>Announced</b><b> </b><b>Plans Or</b><b> </b><b>Programs</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Approximate</b><b> </b><b>Dollar Value</b><b> </b><b>Of Shares</b><b> That </b><b>May Yet</b><b> </b><b>Be Purchased</b><b> </b><b>Under The</b><b> </b><b>Plans Or</b><b> </b><b>Programs</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">10/01/19 - 10/31/19</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250,000,000</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">11/01/19 - 11/30/19</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,409</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">93.38</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250,000,000</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">12/01/19 - 12/31/19</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">682</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">98.11</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250,000,000</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Total</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,091</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">95.54</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For equity compensation plan information, refer to Note 17, &#x201c;Share Plans,&#x201d; to the consolidated financial statements in Item&#xa0;8 of this Annual Report on Form 10-K. For information on the Company&#x2019;s stock repurchase plans, refer to Note 13, &#x201c;Stock Repurchase Programs,&#x201d; to the consolidated financial statements.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     17
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Stock Performance Graph</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The line graph below compares the cumulative total stockholder return on our common stock with the cumulative total return of the Standard &amp; Poor&#x2019;s S&amp;P 500 Index, the S&amp;P 500 Industrials Index and the Russell 2000 Index for the five-year period ended December 31, 2019. The graph and table assume that $100 was invested on December 31, 2014 in each of our common stock, the S&amp;P 500 Index, the S&amp;P MidCap 400&#xa0;Index and the Russell 2000 Index, and that all dividends were reinvested. Cumulative total stockholder returns for our common stock, the S&amp;P 500 Index, the S&amp;P 500 Industrials Index and the Russell 2000 Index are based on our fiscal year.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div style="text-align: center;">
   <div>
    <img alt="" src="compgraph02.jpg" />
   </div>
  </div>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 22%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Company / Market / Peer Group</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">12/31/2014</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">12/31/2015</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">12/31/2016</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">12/31/2017</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">12/31/2018</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">12/31/2019</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100.00</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">63.67</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">87.13</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">105.90</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">106.29</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">215.12</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">S&amp;P 500 Index - Total Returns</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100.00</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">101.38</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">113.51</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">138.29</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">132.23</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">173.86</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">S&amp;P MidCap 400 Index</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100.00</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">96.29</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">114.33</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">130.85</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">114.50</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">142.04</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Russell 2000 Index</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100.00</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">95.59</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">115.95</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">132.94</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">118.30</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">148.49</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Holders</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="margin: 0pt; text-align: justify;">As of February 19, 2020, there were 194&#xa0;registered holders of record of Generac&#x2019;s common stock. A substantially greater number of holders of Generac common stock are &#x201c;street name&#x201d; or beneficial holders, whose shares are held of record by banks, brokers and other financial institutions.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Dividends</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We do not have plans to pay dividends on our common stock in the foreseeable future. However, in the future, subject to factors such as general economic and business conditions, our financial condition and results of operations, our capital requirements, our future liquidity and capitalization, and other such factors that our Board of Directors may deem relevant, we may change this policy and choose to pay dividends. Our ability to pay dividends on our common stock is currently limited by the terms of our senior secured credit facilities and may be further restricted by any future indebtedness we incur. Dividends from, and cash generated by our subsidiaries will be our principal sources of cash to repay indebtedness, fund operations, repurchase shares of common stock and pay dividends. Accordingly, our ability to pay dividends to our stockholders is dependent on the earnings and distributions of funds from our subsidiaries.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Securities Authorized for Issuance Under Equity Compensation Plans</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For information on securities authorized for issuance under our equity compensation plans, refer to &#x201c;Item 12 - Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters,&#x201d; which is incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Recent Sales of Unregistered Securities</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">None.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Use of Proceeds from Registered Securities</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Not applicable.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     18
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item6" href=""></a>Item&#xa0;6. Selected Financial Data</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth our selected historical consolidated financial data for the periods and at the dates indicated. The selected historical consolidated financial data for the years ended December 31, 2019, 2018 and 2017 are derived from our audited consolidated financial statements included elsewhere in this annual report. The selected historical consolidated financial data for the years ended December 31, 2016 and 2015 is derived from our audited historical consolidated financial statements not included in this annual report.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The results indicated below and elsewhere in this annual report are not necessarily indicative of our future performance. This information should be read together with &#x201c;Item 7&#xa0;- Management's Discussion and Analysis of Financial Condition and Results of Operations&#x201d; and our consolidated financial statements and related notes thereto in Item 8 of this Annual Report on Form 10-K.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Over the years, we have executed a number of acquisitions that support our strategic plan. A summary of the recent acquisitions can be found in Note 1, &#x201c;Description of Business,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K. In addition, in August 2015, we closed the Country Home Products acquisition, and in March 2016, we acquired a majority ownership interest in PR Industrial S.r.l. and its subsidiaries (Pramac).</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="18" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31, </b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands, except per share data)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: thin solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2019</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2018</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2017</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2016</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2015</b></b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Statement of Operations Data:</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,204,336</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,679,373</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,447,743</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,317,299</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Costs of goods sold</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,406,584</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,298,424</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,094,587</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">935,322</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">857,349</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">797,752</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">725,040</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">584,786</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">512,421</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">459,950</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating expenses:</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Selling and service</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">217,683</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">191,887</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">174,841</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">164,860</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">130,242</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Research and development</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">68,394</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50,019</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42,869</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37,163</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,922</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">General and administrative</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">110,868</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">103,841</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">87,581</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">74,693</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">52,947</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of intangibles (1)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,644</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,112</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,861</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,953</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,591</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Tradename and goodwill impairment (2)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">40,687</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total operating expenses</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">425,589</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">367,859</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">334,152</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">309,669</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">280,389</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income from operations</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">372,163</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,181</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250,634</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">202,752</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">179,561</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other (expense) income:</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt;">Interest expense</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(41,544</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(40,956</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(42,667</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(44,568</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(42,843</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Investment income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,767</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,893</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">298</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">123</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on extinguishment of debt (3)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(926</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,332</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(574</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,795</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on pension settlement (4)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,920</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on change in contractual interest rate (5)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,957</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,381</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other, net</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,933</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,710</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4,566</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,000</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(6,682</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total other expense, net</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(52,556</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,105</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,935</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(49,055</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(56,578</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">319,607</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,076</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">203,699</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">153,697</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">122,983</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes (6)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">67,299</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">69,856</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">44,142</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">56,519</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">45,236</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,308</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">241,220</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">159,557</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97,178</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">77,747</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">301</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,963</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,749</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">252,007</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">238,257</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">157,808</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">97,154</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">77,747</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.03</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.54</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.53</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.47</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.12</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Statement of Cash Flows data:</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Depreciation</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,265</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,296</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,127</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,465</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,742</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of intangible assets</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,644</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,112</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,861</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,953</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,591</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expenditures for property and equipment</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(60,802</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(47,601</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(33,261</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(30,467</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(30,651</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Other Financial Data:</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA attributable to Generac Holdings Inc. (7)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">449,150</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">416,793</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,225</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">272,738</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270,816</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted net income attributable to Generac Holdings Inc. (8)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">317,822</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">292,213</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">211,869</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">195,572</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">198,436</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     19
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="18" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>As of December 31, </b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: thin solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2016</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2015</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Balance Sheet Data:</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Current assets</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,195,829</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,120,769</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">824,557</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">687,794</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">632,017</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Property and equipment, net</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">316,976</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">278,929</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">230,380</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">212,793</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">184,213</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">805,284</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">764,655</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">721,523</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">704,640</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">669,719</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other intangibles and other assets (9)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">347,580</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">261,961</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">249,505</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">260,742</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">292,686</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total assets</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,665,669</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,426,314</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,025,965</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,865,969</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,778,635</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
     <td>&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total current liabilities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">497,064</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">560,706</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">396,423</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">347,926</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">213,224</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Long-term borrowings, less current portion</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">837,767</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">876,396</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">906,548</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,006,758</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,037,132</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other long-term liabilities (9)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">236,760</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">166,947</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">124,745</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">80,968</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62,408</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redeemable noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,227</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,004</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43,929</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,138</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total stockholders' equity</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,032,851</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">761,261</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">554,320</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">397,179</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">465,871</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total liabilities and stockholders' equity</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,665,669</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,426,314</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,025,965</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,865,969</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,778,635</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(1)&#xa0;Our amortization of intangibles expense includes the straight-line amortization of customer lists, patents and technology, certain tradenames and other finite-lived intangible assets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(2)&#xa0;During the fourth quarter of 2015, our Board of Directors approved a plan to strategically transition and consolidate certain of our brands acquired through acquisitions to the Generac&#xae; tradename. This brand strategy change resulted in a reclassification to a two year remaining useful life and a $36.1 million non-cash charge to write-down the impacted tradenames to net realizable value. Additionally, during the fourth quarter of 2015, a $4.6 million goodwill impairment charge was recorded related to the write-down of the Ottomotores reporting unit goodwill.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(3) Represents the non-cash write-off of original issue discount and deferred financing costs due to voluntary debt prepayments. Refer to Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the losses on extinguishment of debt.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(4) Represents pre-tax settlement charges related to the termination of the Company&#x2019;s domestic pension plan in the fourth quarter of 2019. Refer to Note 16, &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information regarding the Company&#x2019;s pension plans.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(5) For the year ended December 31, 2016, represents a non-cash loss in the third quarter 2016 relating to the continued 25 basis point increase in borrowing costs as a result of the credit agreement leverage ratio remaining above 3.0 times based on projections at that time. For the year ended December 31, 2015, represents a non-cash loss relating to a 25 basis point increase in borrowing costs as a result of the credit agreement leverage ratio rising above 3.0 times effective in the third quarter 2015 and expected to remain above 3.0 times based on projections at that time. Following the May 2017 Term Loan amendment, which removed the pricing grid based on leverage ratio achieved, gains or losses on changes in contractual interest rate will no longer be recorded in the statements of comprehensive income. Refer to Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the gains and losses on changes in the contractual interest rate.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(6) On December 22, 2017, the U.S. Government enacted a comprehensive tax reform bill commonly referred to as the Tax Cuts and Jobs Act (the Tax Act, or Tax Reform). As a result of the Tax Act, we recognized a one-time, non-cash benefit of $28.4 million in the fourth quarter of 2017 primarily from the impact of the revaluation of the Company&#x2019;s net deferred tax liabilities. Refer to Note 15, &#x201c;Income Taxes,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the Tax Act and its impact.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(7)&#xa0;Adjusted EBITDA represents net income before noncontrolling interests, interest expense, taxes, depreciation and amortization, as further adjusted for the other items reflected in the reconciliation table set forth below. The computation of adjusted EBITDA is based on the definition of EBITDA contained in the Term Loan and ABL Facility (terms defined in Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K).</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(8) Adjusted Net Income is defined as net income before noncontrolling interests and provision for income taxes adjusted for the following items: cash income tax expense, amortization of intangible assets, amortization of deferred financing costs and original issue discount related to our debt, intangible impairment charges, certain transaction costs and other purchase accounting adjustments, losses on extinguishment of debt, business optimization expenses, certain other non-cash gains and losses, and adjusted net income attributable to noncontrolling interests, as set forth in the reconciliation table below.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">(9) On January 1, 2019, the Company adopted ASU 2016-02, <i>Leases</i>. The Company adopted this standard using the modified retrospective approach as of the date of adoption, meaning no prior period balances were impacted by the adoption. The adoption of the standard had a material impact on the Company&#x2019;s consolidated balance sheet primarily related to the recognition of right-of-use (ROU) assets and lease liabilities for operating leases. At December 31, 2019, the Company had $36.0 million in ROU assets included in other assets and $37.0 million in lease liabilities included in other liabilities. Refer to Note 10, &#x201c;Leases,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information regarding the Company&#x2019;s leases.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     20
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We view Adjusted EBITDA as a key measure of our performance. We present Adjusted EBITDA not only due to its importance for purposes of our credit agreements, but also because it assists us in comparing our performance across reporting periods on a consistent basis as it excludes items that we do not believe are indicative of our core operating performance. Our management uses Adjusted EBITDA:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:20pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">for planning purposes, including the preparation of our annual operating budget and developing and refining our internal projections for future periods;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:20pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">to allocate resources to enhance the financial performance of our business;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:20pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">as a benchmark for the determination of the bonus component of compensation for our senior executives under our management incentive plan, as described further in our Proxy Statement;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:20pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">to evaluate the effectiveness of our business strategies and as a supplemental tool in evaluating our performance against our budget for each period; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:20pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">in communications with our Board of Directors and investors concerning our financial performance.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:38.05pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We believe Adjusted EBITDA is used by securities analysts, investors and other interested parties in the evaluation of the Company. Management believes the disclosure of Adjusted EBITDA offers an additional financial metric that, when coupled with results prepared in accordance with U.S. generally accepted accounting principles (U.S. GAAP) and the reconciliation to U.S.&#xa0;GAAP results, provides a more complete understanding of our results of operations and the factors and trends affecting our business. We believe Adjusted EBITDA is useful to investors for the following reasons:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Adjusted EBITDA and similar non-GAAP measures are widely used by investors to measure a company's operating performance without regard to items that can vary substantially from company to company depending upon financing and accounting methods, book values of assets, tax jurisdictions, capital structures and the methods by which assets were acquired;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">investors can use Adjusted EBITDA as a supplemental measure to evaluate the overall operating performance of our company, including our ability to service our debt and other cash needs; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">by comparing our Adjusted EBITDA in different historical periods, our investors can evaluate our operating performance excluding the impact of items described below.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The adjustments included in the reconciliation table listed below are provided for under our Term Loan and ABL Facility, and also are presented to illustrate the operating performance of our business in a manner consistent with the presentation used by our management and Board of Directors. These adjustments eliminate the impact of a number of items that:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">we do not consider indicative of our ongoing operating performance, such as non-cash write-downs and other charges, non-cash gains, write-offs relating to the retirement of debt, severance costs and other restructuring-related business optimization expenses;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">we believe to be akin to, or associated with, interest expense, such as administrative agent fees, revolving credit facility commitment fees and letter of credit fees; or</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">are non-cash in nature, such as share-based compensation expense.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:36pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We explain in more detail in footnotes (a)&#xa0;through (i) below why we believe these adjustments are useful in calculating Adjusted EBITDA as a measure of our operating performance.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Adjusted EBITDA does not represent, and should not be a substitute for, net income or cash flows from operations as determined in accordance with U.S.&#xa0;GAAP. Adjusted EBITDA has limitations as an analytical tool, and you should not consider it in isolation, or as a substitute for analysis of our results as reported under U.S.&#xa0;GAAP. Some of the limitations are:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Adjusted EBITDA does not reflect our cash expenditures, or future requirements for capital expenditures or contractual commitments;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Adjusted EBITDA does not reflect changes in, or cash requirements for, our working capital needs;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Adjusted EBITDA does not reflect the significant interest expense, or the cash requirements necessary to service interest or principal payments on our debt;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">although depreciation and amortization are non-cash charges, the assets being depreciated and amortized will often have to be replaced in the future, and Adjusted EBITDA does not reflect any cash requirements for such replacements;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">several of the adjustments that we use in calculating Adjusted EBITDA, such as non-cash write-downs and other charges, while not involving cash expense, do have a negative impact on the value of our assets as reflected in our consolidated balance sheet prepared in accordance with U.S.&#xa0;GAAP; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">other companies may calculate Adjusted EBITDA differently than we do, limiting its usefulness as a comparative measure.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     21
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Furthermore, as noted above, one of our uses of Adjusted EBITDA is as a benchmark for determining elements of compensation for our senior executives. At the same time, some or all of these senior executives have responsibility for monitoring our financial results, generally including the adjustments in calculating Adjusted EBITDA (subject ultimately to review by our Board of Directors in the context of the Board's review of our financial statements). While many of the adjustments (for example, transaction costs and credit facility fees), involve mathematical application of items reflected in our financial statements, others involve a degree of judgment and discretion. While we believe all of these adjustments are appropriate, and while the calculations are subject to review by our Board of Directors in the context of the Board's review of our financial statements, and certification by our Chief Financial Officer in a compliance certificate provided to the lenders under our Term Loan and ABL Facility, this discretion may be viewed as an additional limitation on the use of Adjusted EBITDA as an analytical tool.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Because of these limitations, Adjusted EBITDA should not be considered as a measure of discretionary cash available to us to invest in the growth of our business. We compensate for these limitations by relying primarily on our U.S.&#xa0;GAAP results and using Adjusted EBITDA only supplementally.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table presents a reconciliation of net income to Adjusted EBITDA attributable to Generac Holdings Inc.:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="18" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: thin solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2016</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2015</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,007</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">238,257</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">157,808</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97,154</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">77,747</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to noncontrolling interests (a)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">301</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,963</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,749</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,308</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">241,220</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">159,557</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97,178</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">77,747</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest expense</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41,544</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,956</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42,667</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44,568</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42,843</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Depreciation and amortization</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">60,767</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">47,408</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51,988</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">54,418</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,333</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">67,299</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">69,856</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44,142</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,519</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">45,236</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash write-down and other adjustments (b)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">240</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,532</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,923</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,892</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash share-based compensation expense (c)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,694</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,563</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,205</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,493</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,241</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Tradename and goodwill impairment (d)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,687</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on extinguishment of debt (e)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">926</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,332</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">574</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,795</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement (f)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,920</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on change in contractual interest rate (g)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,957</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,381</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Transaction costs and credit facility fees (h)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,724</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,883</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,145</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,442</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,249</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Business optimization expenses (i)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,572</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">952</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,912</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,316</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,947</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(879</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">850</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">761</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">700</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">465</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">454,115</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">424,552</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">317,300</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">276,522</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270,816</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA attributable to noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,965</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,759</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">6,075</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,784</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">449,150</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">416,793</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">311,225</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">272,738</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">270,816</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(a)&#xa0;Includes the noncontrolling interests&#x2019; share of expenses related to Pramac purchase accounting, including the step-up in value of inventories and intangible amortization of $4.2 million, $4.6 million, $4.7 million, and $8.0 million for the years ended December 31, 2019, 2018, 2017, and 2016, respectively.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(b)&#xa0;Represents the following non-cash charges: gains/losses on disposal of assets, unrealized mark-to-market adjustments on commodity contracts, transactional foreign currency gains/losses and certain purchase accounting related adjustments. We believe that adjusting net income for these non-cash charges is useful for the following reasons:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">The gains/losses on disposals of assets result from the sale of assets that are no longer useful in our business and therefore represent gains or losses that are not from our core operations;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">The adjustments for unrealized mark-to-market gains and losses on commodity contracts represent non-cash items to reflect changes in the fair value of forward contracts that have not been settled or terminated. We believe it is useful to adjust net income for these items because the charges do not represent a cash outlay in the period in which the charge is incurred, although Adjusted EBITDA must always be used together with our U.S.&#xa0;GAAP statements of comprehensive income and cash flows to capture the full effect of these contracts on our operating performance;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">The purchase accounting adjustments represent non-cash items to reflect fair value at the date of acquisition, and therefore do not reflect our ongoing operations</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     22
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(c)&#xa0;Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting period.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(d) During the fourth quarter of 2015, our Board of Directors approved a plan to strategically transition and consolidate certain of our brands acquired through acquisitions to the Generac&#xae; tradename. This brand strategy change resulted in a reclassification to a two year remaining useful life and a $36.1 million non-cash charge to write-down the impacted tradenames to net realizable value. Additionally, during the fourth quarter of 2015, a $4.6 million goodwill impairment charge was recorded related to the write-down of the Ottomotores reporting unit goodwill.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(e)&#xa0;Represents the non-cash write-off of original issue discount and deferred financing costs due to voluntary prepayments of Term Loan debt. Refer to Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the losses on extinguishment of debt.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(f)&#xa0;Represents pre-tax settlement charges related to the termination of the Company&#x2019;s domestic pension plan in the fourth quarter of 2019. Refer to Note 16, &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information regarding the Company&#x2019;s pension plans.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(g) For the year ended December 31, 2016, represents a non-cash loss relating to the continued 25 basis point increase in borrowing costs as a result of the credit agreement leverage ratio remaining above 3.0 times based on projections at that time. For the year ended December 31, 2015, represents a non-cash loss relating to a 25 basis point increase in borrowing costs as a result of the credit agreement leverage ratio rising above 3.0 times and expected to remain above 3.0 times based on projections at that time. Following the May 2017 Term Loan amendment, which removed the pricing grid based on leverage ratio achieved, gains or losses on changes in contractual interest rate will no longer be recorded in the statements of comprehensive income. Refer to Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the gains and losses on changes in the contractual interest rate.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(h)&#xa0;Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity issuance, or debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities, such as administrative agent fees and credit facility commitment fees under our Term Loan and ABL Facility, which we believe to be akin to, or associated with, interest expense and whose inclusion in Adjusted EBITDA is therefore similar to the inclusion of interest expense in that calculation, and transaction costs relating to the acquisition of businesses.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(i)&#xa0;Represents severance and non-recurring plant consolidation costs. Additionally, the year ended December 31, 2016 primarily represents charges relating to business optimization and restructuring costs to address the significant and extended downturn for capital spending within the oil &amp; gas industry. These charges represent expenses that are not from our core operations and do not reflect our ongoing operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We believe Adjusted Net Income is used by securities analysts, investors and other interested parties in the evaluation of our company&#x2019;s operations. Management believes the disclosure of Adjusted Net Income offers an additional financial metric that, when used in conjunction with U.S. GAAP results and the reconciliation to U.S. GAAP results, provides a more complete understanding of our ongoing results of operations, and the factors and trends affecting our business.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The adjustments included in the reconciliation table listed below are presented to illustrate the operating performance of our business in a manner consistent with the presentation used by investors and securities analysts. Similar to the Adjusted EBITDA reconciliation, these adjustments eliminate the impact of a number of items we do not consider indicative of our ongoing operating performance or cash flows, such as amortization costs, transaction costs and write-offs relating to the retirement of debt. We also make adjustments to present cash taxes paid as a result of our favorable tax attributes, causing our cash tax rate to be lower than our U.S GAAP tax rate.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Similar to Adjusted EBITDA, Adjusted Net Income does not represent, and should not be a substitute for, net income or cash flows from operations as determined in accordance with U.S. GAAP. Adjusted Net Income has limitations as an analytical tool, and you should not consider it in isolation, or as a substitute for analysis of our results as reported under U.S. GAAP. Some of the limitations are:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Adjusted Net Income does not reflect changes in, or cash requirements for, our working capital needs;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">although amortization is a non-cash charge, the assets being amortized may have to be replaced in the future, and Adjusted Net Income does not reflect any cash requirements for such replacements; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">other companies may calculate Adjusted Net Income differently than we do, limiting its usefulness as a comparative measure.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     23
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table presents a reconciliation of net income to Adjusted Net Income attributable to Generac Holdings Inc.:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="18" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: thin solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2016</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2015</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,007</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">238,257</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">157,808</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97,154</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">77,747</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">301</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,963</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,749</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,308</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">241,220</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">159,557</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97,178</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">77,747</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">67,299</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">69,856</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">44,142</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">56,519</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">45,236</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">319,607</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,076</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">203,699</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">153,697</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">122,983</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of intangible assets</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,644</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,112</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,861</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,953</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,591</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of deferred finance costs and original issue discount</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,712</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,749</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,516</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,940</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,429</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Tradename and goodwill impairment</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,687</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on extinguishment of debt</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">926</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,332</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">574</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,795</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,920</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on change in contractual interest rate</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,957</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,381</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Transaction costs and other purchase accounting adjustments (a)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">874</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,578</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,706</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,653</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,710</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Business optimization expenses</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,572</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">952</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,912</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,316</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,947</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted net income before provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">367,255</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">342,799</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">240,694</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">207,090</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">204,523</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash income tax expense (b)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(47,945</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(47,064</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(25,624</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(9,299</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(6,087</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted net income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">319,310</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">295,735</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">215,070</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">197,791</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">198,436</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted net income attributable to noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,488</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,522</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,201</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,219</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted net income attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">317,822</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">292,213</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">211,869</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">195,572</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">198,436</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(a) Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity issuance or debt issuance or refinancing, and certain purchase accounting adjustments.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(b) For the years ended December 31, 2019, 2018, 2017, and 2016, the amount is based on a cash income tax rate of 15.0%, 15.1%, 12.5% and 5.9%, respectively. Cash income tax expense for 2019, 2018, 2017 and 2016 is based on the projected taxable income and corresponding cash taxes payable for the full year after considering the effects of current and deferred income tax items, and is calculated by applying the derived cash tax rate to the period&#x2019;s pretax income. For the year ended December 31, 2015, the amount is based on actual cash income taxes paid that year.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item7" href=""></a>Item&#xa0;7. Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following discussion and analysis of our financial condition and results of operations should be read together with &#x201c;Item 1 &#x2013; Business,&#x201d; &#x201c;Item 6 - Selected Financial Data&#x201d; and the consolidated financial statements and the related notes thereto in Item 8 of this Annual Report on Form 10-K. This discussion contains forward-looking statements, based on current expectations and related to future events and our future financial performance, that involve risks and uncertainties. Our actual results may differ materially from those anticipated in these forward-looking statements as a result of many factors, including those set forth under &#x201c;Item 1A - Risk Factors.&#x201d;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Overview </b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are a leading global designer and manufacturer of a wide range of energy technology solutions. The Company provides power generation equipment, energy storage systems, and other power products&#xa0;serving the residential, light commercial and industrial markets. Power generation is a key focus, which differentiates us from our main competitors that also have broad operations outside of the power equipment market. As the only significant market participant focused predominantly on these products, we have one of the leading market positions in the power equipment market in North America and an expanding presence internationally. We believe we have one of the widest ranges of products in the marketplace, including residential, commercial and industrial standby generators, as well as portable and mobile generators used in a variety of applications. A key strategic focus for the Company in recent years has been leveraging our leading position in the growing market for cleaner burning, more cost effective natural gas fueled generators to expand into applications beyond standby power. We have also been focused on &#x201c;connecting&#x201d; the equipment we manufacture to the users of that equipment, helping to drive additional value to our customers and our distribution partners over the product lifecycle. Other power products that we design and manufacture include light towers which provide temporary lighting for various end markets; commercial and industrial mobile heaters and pumps used in the oil &amp; gas, construction and other industrial markets; and a broad product line of outdoor power equipment for residential and commercial use. During 2019, we began providing energy storage systems as a clean energy solution for residential use that capture and store electricity from solar panels or other power sources and help reduce home energy costs while also protecting homes from brief power outages.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     24
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Business D</b><b>rivers</b><b> and Operational Factors</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In operating our business and monitoring its performance, we pay attention to a number of business drivers and trends as well as operational factors. The statements in this section are based on our current expectations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Business </i></b><b><i>Drivers and T</i></b><b><i>rends </i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our performance is affected by the demand for reliable power generation products, energy storage systems, and other power products&#xa0;by our customer base. This demand is influenced by several important drivers and trends affecting our industry, including the following:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Increasing penetration opportunity.</i>&#xa0;&#xa0;&#xa0;&#xa0;Many potential customers are still not aware of the costs and benefits of automatic backup power solutions. We estimate that penetration rates for home standby generators are only approximately 4.75% of the addressable market of homes in the United States. The decision to purchase backup power for many light-commercial buildings such as convenience stores, restaurants and gas stations is more return-on-investment driven and as a result these applications have relatively lower penetration rates as compared to buildings used in code-driven or mission critical applications such as hospitals, wastewater treatment facilities, 911 call centers, data centers and certain industrial locations. The emergence of lower cost, cleaner burning natural gas fueled generators has helped to increase the penetration of standby generators over the past decade in the light-commercial market. In addition, the installed base of backup power for telecommunications infrastructure is still increasing due to a variety of factors including the impending rollout&#xa0;of next-generation 5G wireless networks enabling new technologies and the growing importance for critical communications and other uninterrupted voice and data services. We believe by expanding our distribution network, continuing to develop our product lines, and targeting our marketing efforts, we can continue to build awareness and increase penetration for our standby generators for residential, commercial and industrial purposes.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Effect of large scale </i><i>and baseline </i><i>power disruptions.</i>&#xa0;&#xa0;&#xa0;&#xa0;Power disruptions are an important driver of customer awareness for back-up power and have historically influenced demand for generators, both in the United States and internationally. Increased frequency and duration of major power outage events, that have a broader impact beyond a localized level, increases product awareness and may drive consumers to accelerate their purchase of a standby or portable generator during the immediate and subsequent period, which we believe may last for six to twelve months following a major power outage event for standby generators. For example, the major outage events that occurred during the second half of 2017 drove strong demand for portable and home standby generators, and the increased awareness of these products contributed to strong revenue growth in both 2017 and 2018. Major power disruptions are unpredictable by nature and, as a result, our sales levels and profitability may fluctuate from period to period. In addition, there are smaller, more localized power outages that occur frequently across the United States that drive the baseline level of demand for back-up power solutions. The level of baseline power outage activity occurring across the United States can also fluctuate, and may cause our financial results to fluctuate from year to year.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Energy storage and monitoring markets developing quickly. </i><i>&#xa0;&#xa0;&#xa0;</i>During 2019, we entered the rapidly developing energy storage and monitoring markets with the acquisitions of Pika Energy and Neurio Technologies. We believe the electric power landscape will undergo significant changes in the decade ahead as a result of rising utility rates, grid instability and power utility quality issues, environmental concerns, and the continuing performance and cost improvements in renewable energy and batteries. On-site power generation from solar, wind, geothermal, and natural gas generators is projected to become more prevalent as will the need to manage, monitor and store this power &#x2013; potentially developing into a significant market opportunity annually. The capabilities provided by Pika and Neurio have enabled us to bring an efficient and intelligent energy-savings solution to the energy storage and monitoring markets which we believe will position Generac as a key participant going forward. Although very different from the emergency backup power space we serve today, we believe this market will develop similarly as the home standby generator market has over the past two decades. Our efforts to develop a cost-effective global supply chain, omni-channel distribution, targeted consumer-based marketing content, and proprietary in-home sales tools have played a critical role in creating the market for home standby generators, and we intend to leverage our expertise and capabilities in these areas as we work to grow the energy storage and monitoring markets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>California market for backup power increasing.</i> &#xa0;&#xa0;&#xa0;During 2019, the largest utility in the state of California along with other utilities announced their intention and ultimately executed a number of Public Safety Power Shutoff (PSPS) events in large portions of their service areas. These events were pro-active measures to prevent their equipment from potentially causing catastrophic wildfires during the dry and windy season of the year. The occurrence of these events, along with the utilities warning these actions could continue in the future&#xa0;as they upgrade their transmission and distribution infrastructure, have resulted in significant awareness and increased demand for our generators in California, where penetration rates of home standby generators stand at approximately 1%. We have a significant focus on expanding distribution in California and are working together with local regulators, inspectors, and gas utilities to increase their bandwidth and sense of urgency around approving and providing the infrastructure necessary for home standby and other backup power products. Our efforts in this part of the country will also be helpful in developing the market for energy storage and monitoring where the installed base of solar and other renewable sources of electricity are some of the highest in the U.S., and the regulatory environment is mandating renewable energy on new construction starting in 2020.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     25
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Impact of residential investment cycle.</i> &#xa0;&#xa0;&#xa0;The market for residential generators and energy storage systems is&#xa0;also affected by the residential investment cycle and overall consumer confidence and sentiment. When homeowners are confident of their household income, the value of their home and overall net worth, they are more likely to invest in their home. These trends can have an impact on demand for residential generators and energy storage systems. Trends in the new housing market highlighted by residential housing starts can also impact demand for these products. Demand for outdoor power equipment is also impacted by several of these factors, as well as weather precipitation patterns. Finally, the existence of renewable energy mandates and investment tax credits and other subsidies can also have an impact on the demand for energy storage systems.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Impact of business capital investment and other economic cycle</i><i>s</i><i>.</i>&#xa0; &#xa0; The global market for our commercial and industrial products is affected by different capital investment cycles, which can vary across the numerous regions around the world in which we participate. These markets include non-residential building construction, durable goods and infrastructure spending, as well as investments in the exploration and production of oil &amp; gas, as businesses or organizations either add new locations or make investments to upgrade existing locations or equipment. These trends can have a material impact on demand for these products. The capital investment cycle may differ for the various commercial and industrial end markets that we serve including light commercial, retail, office, telecommunications, industrial, data centers, healthcare, construction, oil &amp; gas and municipal infrastructure, among others. The market for these products is also affected by general economic and geopolitical conditions as well as credit availability in the geographic regions that we serve. In addition, we believe demand for our mobile power products will continue to benefit from a secular shift towards renting versus buying this type of equipment.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>F</i></b><b><i>actors</i></b><b><i> Affecting Results of O</i></b><b><i>perations</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are subject to various factors that can affect our results of operations, which we attempt to mitigate through factors we can control, including continued product development, expanded distribution, pricing, cost control and hedging. Certain operational and other factors that affect our business include the following:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Effect of commodity, currency and component price fluctuations.</i>&#xa0;&#xa0;&#xa0;&#xa0;Industry-wide price fluctuations of key commodities, such as steel, copper and aluminum, along with other components we use in our products, as well as changes in labor costs required to produce our products, can have a material impact on our results of operations. Acquisitions in recent years have further expanded our commercial and operational presence outside of the United States. These international acquisitions, along with our existing global supply chain, expose us to fluctuations in foreign currency exchange rates and regulatory tariffs that can also have a material impact on our results of operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We have historically attempted to mitigate the impact of any inflationary pressures through improved product design and sourcing, manufacturing efficiencies, price increases and select hedging transactions. Our results are also influenced by changes in fuel prices in the form of freight rates, which in some cases are accepted by our customers and in other cases are paid by us.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Seasonality.</i>&#xa0;&#xa0;&#xa0;&#xa0;Although there is demand for our products throughout the year, in each of the past five years, approximately 20% to 24% of our net sales occurred in the first quarter, 22% to 25% in the second quarter, 26% to 28% in the third quarter and 27% to 29% in the fourth quarter, with different seasonality depending on the occurrence, timing and severity of major power outage activity in each year. Major outage activity is unpredictable by nature and, as a result, our sales levels and profitability may fluctuate from period to period. The seasonality experienced during a major power outage, and for the subsequent quarters following the event, will vary relative to other periods where no major outage events occurred. We maintain a flexible production and supply chain infrastructure in order to respond to outage-driven peak demand.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Factors influencing interest </i><i>expense</i><i> and cash interest expense</i><i>.&#xa0; &#xa0;&#xa0;</i>Interest expense can be impacted by a variety of factors, including market fluctuations in LIBOR, interest rate election periods, interest rate swap agreements, repayments or borrowings of indebtedness, and amendments to our credit agreements. In connection with our term loan amendment in December 2019, language was added to the agreement to include a benchmark replacement rate, selected by the administrative agent and the borrower, as a replacement to LIBOR that would take affect at the time LIBOR ceases. We&#xa0;plan&#xa0;to work with our&#xa0;lenders in the&#xa0;future to amend other LIBOR based debt agreements to add a replacement rate should the use of LIBOR cease. Interest expense increased slightly during 2019 compared to 2018, primarily due to increased borrowings by our foreign subsidiaries. Refer to Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Factors influencing provision for income taxes and cash</i><i> income</i><i> taxes paid.</i>&#xa0; &#xa0; On December 22, 2017, the U.S. government enacted the Tax Act, which significantly changed&#xa0;how the U.S. taxes corporations. During 2018, the U.S. Treasury Department (Treasury) issued several new regulations and other guidance which we have incorporated into our final tax calculations. At December 31, 2019, we consider the tax expense recorded for the impact of Tax Reform to be complete. It is possible additional regulations or guidance could be issued by Treasury or by a state which may create an additional tax expense or benefit. We will update our future tax provisions based on new regulations or guidance accordingly.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     26
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As a result of the Tax Act, we recognized a one-time, non-cash benefit of $28.4 million in the fourth quarter of 2017 primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from 35% to 21%.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of December 31, 2019, we had approximately $225 million of tax-deductible goodwill and intangible asset amortization remaining from our acquisition by CCMP Capital Advisors, LLC in 2006 that we expect to generate aggregate cash tax savings of approximately $57 million through 2021, assuming continued profitability of our U.S. business and a combined federal and state tax rate of 25.3%. The recognition of the tax benefit associated with these assets for tax purposes is expected to be $122 million in 2020 and $102 million in 2021, which generates annual cash tax savings of $31 million in 2020 and $26 million in 2021. Based on current business plans, we believe that our cash tax obligations through 2021 will be significantly reduced by these tax attributes, after which our cash tax obligation will increase. Other domestic acquisitions have resulted in additional tax deductible goodwill and intangible assets that will generate tax savings, but are not material to our consolidated financial statements.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Components of Net Sales and E</b><b>xpenses</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Net </i></b><b><i>S</i></b><b><i>ales</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our net sales primarily consist of product sales to our customers. This includes sales of our power generation equipment, energy storage systems, and other power products to the residential, light commercial and industrial markets, as well as service parts to our dealer network. Net sales also include shipping and handling charges billed to customers, with the related freight costs included in cost of goods sold. Additionally, we offer other services, including extended warranties, remote monitoring, installation and maintenance services. However, these services accounted for less than three percent of our net sales for the year ended December 31, 2019. Refer to Note 2, &#x201c;Significant Accounting Policies - Revenue Recognition,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on our revenue streams and related revenue recognition accounting policies.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are not dependent on any one channel or customer for our net sales, with no single customer representing more than 5% of our sales, and our top ten customers representing less than 19% of our net sales for the year ended December 31, 2019.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Costs of Goods S</i></b><b><i>old</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The principal elements of costs of goods sold&#xa0;are component parts, raw materials, factory overhead and labor. Component parts and raw materials comprised approximately 75% of costs of goods sold for the year ended December 31, 2019. The principal component parts are engines,&#xa0;alternators, and batteries. We design and manufacture air-cooled engines for certain of our generators up to 22kW, along with certain liquid-cooled, natural gas&#xa0;engines. We source engines for certain of our smaller products and all of our diesel products. For certain natural gas engines, we source the base engine block, and then add a significant amount of value engineering, sub-systems and other content to the point that we are recognized as the OEM of those engines. We design and manufacture many of the alternators for our units.&#xa0;We also manufacture other generator components where we believe we have a design and cost advantage. We source component parts from an extensive global network of reliable, high quality suppliers. In some cases, these relationships are proprietary.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The principal raw materials used in the manufacturing process that are sourced are steel, copper and aluminum. We are susceptible to fluctuations in the cost of these commodities, impacting our costs of goods sold. We seek to mitigate the impact of commodity prices on our business through a continued focus on global sourcing, product design improvements, manufacturing efficiencies, price increases and select hedging transactions. We are also impacted by foreign currency fluctuations given our global supply chain. There is typically a lag between raw material price fluctuations and their effect on our costs of goods sold.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other sources of costs include our manufacturing and warehousing facilities, factory overhead, labor and shipping costs. Factory overhead includes utilities, support personnel, depreciation, general supplies, support and maintenance. Although we attempt to maintain a flexible manufacturing cost structure, our margins can be impacted when we cannot timely adjust labor and manufacturing costs to match fluctuations in net sales.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Operating E</i></b><b><i>xpenses</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our operating expenses consist of costs incurred to support our sales, marketing, distribution, service parts, engineering, information systems, human resources, accounting, finance, risk management, legal and tax functions, among others. These expenses include personnel costs such as salaries, bonuses, employee benefit costs,&#xa0;taxes, and share-based compensation cost,&#xa0;and are classified into three categories: selling and service, research and development, and general and administrative. Additionally, the amortization expense related to our finite-lived intangible assets is included within operating expenses.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     27
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Selling and service.</i>&#xa0;&#xa0;&#xa0;&#xa0;Our selling and service expenses consist primarily of personnel expense, marketing expense, standard assurance warranty expense and other sales expenses. Our personnel expense recorded in selling and services expenses includes the expense of our sales force responsible for our broad customer base and other personnel involved in the marketing, sales and service of our products. Standard warranty expense, which is recorded at the time of sale, is estimated based on historical trends. Our marketing expenses include direct mail costs, printed material costs, product display costs, market research expenses, trade show expenses, media advertising, promotional expenses and co-op advertising costs. Marketing expenses are generally related to the launch of new product offerings, participation in trade shows and other events, opportunities to create market awareness for our products, and general brand awareness marketing efforts.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Research and </i><i>development.</i>&#xa0;&#xa0;&#xa0;&#xa0;Our research and development expenses support numerous projects covering all of our product lines. They also support our connectivity, remote monitoring, and energy monitoring initiatives. We operate engineering facilities with extensive capabilities at many locations globally and employ over 500 personnel with focus on new product development, existing product improvement and cost containment. We are committed to research and development, and rely on a combination of patents and trademarks to establish and protect our proprietary rights. Our research and development costs are expensed as incurred.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>General and administrative.</i>&#xa0;&#xa0;&#xa0;&#xa0;Our general and administrative expenses include personnel costs for general and administrative employees; accounting, legal and professional services fees; information technology costs; insurance; travel and entertainment expense; and other corporate expenses.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Amortization of intangibles.</i>&#xa0;&#xa0;&#xa0;&#xa0;Our amortization of intangibles expense includes the straight-line amortization of finite-lived tradenames, customer lists, patents and technology, and other intangibles assets.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Other </i></b><b><i>(Expense) Income</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other (expense) income includes the interest expense on our outstanding borrowings, amortization of debt financing costs and original issue discount, and cash flows related to interest rate swap agreements. Other (expense) income also includes other financial items such as losses on extinguishment of debt, gains (losses) on changes in contractual interest rate, loss on pension settlement, and investment&#xa0;income earned on our cash and cash equivalents.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Results of O</b><b>perations</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Year ended Decemb</i></b><b><i>er 31, 201</i></b><b><i>9</i></b><b><i> compared</i></b><b><i> to year ended December 3</i></b><b><i>1, 201</i></b><b><i>8</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth our consolidated statement of operations data for the periods indicated:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,204,336</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">180,872</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8.9</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cost of goods sold</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,406,584</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,298,424</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">108,160</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8.3</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">797,752</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">725,040</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">72,712</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.0</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating expenses:</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Selling and service</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">217,683</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">191,887</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,796</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13.4</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Research and development</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">68,394</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50,019</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,375</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">General and administrative</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">110,868</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">103,841</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,027</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of intangible assets</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">28,644</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">22,112</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">6,532</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">29.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total operating expenses</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">425,589</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">367,859</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">57,730</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income from operations</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">372,163</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,181</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,982</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.2</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total other expense, net</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(52,556</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,105</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(6,451</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14.0</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">319,607</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,076</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,531</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">67,299</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">69,856</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,557</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-3.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,308</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">241,220</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,088</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.6</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">301</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,963</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,662</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-89.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">252,007</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">238,257</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,750</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     28
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following sets forth our reportable segment information for the periods indicated:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Net Sales by Segment</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,742,898</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,566,520</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">176,378</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.3</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">461,438</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">456,944</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,494</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1.0</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,204,336</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">180,872</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">8.9</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Adjusted EBITDA by Segment</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">428,667</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">388,495</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,172</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.3</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">25,448</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,057</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(10,609</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-29.4</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total Adjusted EBITDA</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">454,115</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">424,552</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,563</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">7.0</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth our product class information for the periods indicated:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,143,723</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,042,739</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100,984</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">871,595</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">820,270</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51,325</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.3</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">189,018</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">160,455</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">28,563</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,204,336</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">180,872</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">8.9</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Net sales</i><i>. </i><i>&#xa0;&#xa0;&#xa0;</i>The increase in Domestic segment sales for the year ended December 31, 2019 was primarily due to strong shipments of home standby generators due to increased trends of power outage activity across the U.S. and Canada, inclusive of public utility power shut-offs in California. In addition, C&amp;I stationary generator shipments were also strong, particularly for natural gas and telecom applications.&#xa0;The Pika and Neurio acquisitions provided a modest contribution of sales in 2019 given their start-up nature. The overall Domestic segment&#xa0;sales growth&#xa0;was&#xa0;partially offset by lower shipments&#xa0;of portable generators and C&amp;I mobile products.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The slight increase in International segment sales for the year ended December 31, 2019 was primarily due to contributions from the Selmec and Captiva acquisitions.&#xa0;International segment sales in 2019 were impacted by the unfavorable results of foreign currency and geopolitical headwinds that caused economic softness in certain key regions of the world in which we operate.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total contribution from non-annualized recent acquisitions for the year ended December 31, 2019 was $36.1 million.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Gross profit. </i><i>&#xa0;&#xa0;&#xa0;</i>Gross profit margin for the year ended December 31, 2019 was 36.2% compared to 35.8% for the year ended December 31, 2018. The increase reflected a favorable sales mix towards higher margin home standby generators and price increases implemented since the prior period. These items were partially offset by the impact of recent acquisitions and the realization of higher input costs, including regulatory tariffs,&#xa0;logistics costs, and labor rates.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Operating expenses. </i><i>&#xa0;&#xa0;&#xa0;</i>The increase in operating expenses was primarily driven by incremental variable operating expense on the strong sales growth, recurring operating expenses from recent acquisitions, an increase in employee headcount related to strategic initiatives, higher marketing and promotional spend, and higher intangible amortization expenses.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Other expense. </i><i> </i><i> </i>The increase in other expense, net was primarily due to a $10.9 million pre-tax settlement charge related to the termination of the Company&#x2019;s domestic pension plan in the fourth quarter of 2019, partially off-set by more favorable foreign currency adjustments compared to the prior year.&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Provision for i</i><i>ncome tax</i><i>es</i><i>.</i> &#xa0;&#xa0;&#xa0;The effective income tax rates for the years ended December 31, 2019 and 2018 were 21.1% and 22.5%, respectively. The decrease in the effective tax rate is primarily due to a reduction in the U.S. state income tax expense&#xa0;and lower foreign earnings, which are subject to higher jurisdictional tax rates.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Net income attributable to Generac </i><i>Holdings Inc.</i>&#xa0;&#xa0;&#xa0;&#xa0;The increase in net income attributable to Generac Holdings Inc. was primarily due to the factors outlined above.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Adjusted EBITDA. </i><i>&#xa0;&#xa0;&#xa0;</i>Adjusted EBITDA margins for the Domestic segment for the year ended December 31, 2019 were 24.6% of net sales as compared to 24.8% of net sales for the year ended December 31, 2018. Adjusted EBITDA margin in the current year benefited from favorable sales mix, pricing initiatives, and fixed operating cost leverage on the higher sales volumes. These favorable impacts were more than offset by higher input costs, including regulatory tariffs, increased employee headcount, higher marketing and promotional spend, and recurring operating expenses from recent acquisitions.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>&#xa0;</i></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     29
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Adjusted EBITDA margins for the International segment, before deducting for non-controlling interests, for the year ended December 31, 2019 were 5.5% of net sales as compared to 7.9% of net sales for the year ended December 31, 2018. The decrease in Adjusted EBITDA margin as compared to the prior year was primarily due to unfavorable sales mix, higher input costs, and incremental operating expense investments.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Adjusted net income</i><i>. </i><i>&#xa0;&#xa0;&#xa0;</i>Adjusted Net Income of $317.8 million for the year ended December 31, 2019 increased 8.8% from $292.2&#xa0;million for the year ended December 31, 2018, due to the factors outlined above.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In the fourth quarter of 2019, management&#xa0;determined that the Latin American export operations of the legacy Generac business&#xa0;should have been included in the International reportable segment beginning in 2018. Previously, this&#xa0;was reported in the Domestic segment, in amounts that were not material. Refer to Note 7, &#x201c;Segment Reporting,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information regarding this correction.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Year ended December 31, 201</i></b><b><i>8</i></b><b><i> compared</i></b><b><i> to year ended December 31, 201</i></b><b><i>7</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth our consolidated statement of operations data for the periods indicated:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,679,373</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">344,091</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cost of goods sold</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,298,424</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,094,587</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">203,837</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">18.6</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">725,040</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">584,786</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">140,254</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24.0</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating expenses:</p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Selling and service</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">191,887</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">174,841</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,046</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Research and development</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50,019</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42,869</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,150</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">General and administrative</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">103,841</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">87,581</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,260</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18.6</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of intangible assets</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">22,112</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">28,861</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(6,749</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-23.4</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total operating expenses</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">367,859</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">334,152</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">33,707</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10.1</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income from operations</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,181</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250,634</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">106,547</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total other expense, net</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,105</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,935</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">830</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-1.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,076</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">203,699</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">107,377</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">52.7</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">69,856</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">44,142</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">25,714</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">58.3</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">241,220</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">159,557</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">81,663</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51.2</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to noncontrolling interests</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,963</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,749</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,214</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">N/A</td>
     <td style="width: 1%; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">238,257</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">157,808</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">80,449</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">51.0</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth our reportable segment information for the periods indicated:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Net Sales by Segment</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,566,520</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,271,678</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">294,842</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23.2</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">456,944</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">407,695</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">49,249</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12.1</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,679,373</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">344,091</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">20.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Adjusted EBITDA by Segment</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">388,495</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">282,450</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">106,045</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,057</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">34,850</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,207</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total Adjusted EBITDA</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">424,552</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">317,300</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">107,252</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     30
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth our product class information for the periods indicated:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,042,739</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">870,491</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">172,248</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">820,270</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">684,352</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">135,918</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19.9</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">160,455</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">124,530</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">35,925</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">28.8</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total net sales</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,023,464</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,679,373</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">344,091</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">20.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Net sales</i><i>. </i>The increase in Domestic sales for the year ended December 31, 2018 was primarily due to strong broad-based growth in shipments of home standby generators, portable generators, outdoor power equipment and service parts. Shipments of residential products were particularly strong with demand climbing from the elevated outage environment which continued to drive awareness around the home standby category and the need for homeowners to have back-up power. Sales of our C&amp;I mobile and stationary products were also strong during the year with rental, telecom, and healthcare market verticals experiencing growth.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The increase in International sales for the year ended December 31, 2018 was primarily due to the $30.7 million contribution from the Selmec acquisition, and broad-based core growth from the Pramac, Ottomotores and Motortech businesses as we continue to drive market penetration across the globe.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Gross profit. </i>Gross profit margin for the year ended December 31, 2018 was 35.8% compared to 34.8% for the year ended December 31, 2017. The increase reflected a favorable mix of home standby generators, improved&#xa0;leverage of fixed manufacturing costs on the increase in sales, favorable pricing environment, and focused initiatives to improve margins. These items were partially offset by general inflationary pressures from higher commodities, currencies, wages and logistics costs.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Operating expenses. </i>The increase in operating expenses was primarily driven by an increase in employee and incentive compensation costs, higher selling-related variable operating expenses given the higher sales volumes, and the recurring operating expenses from the Selmec acquisition. These items were partially offset by lower promotion, marketing and intangible amortization expenses.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Other expense. </i>The decrease in other expense, net was primarily due to lower interest expense and higher investment income, partially offset by the $1.3 million loss on extinguishment of debt resulting from a $50.0 million voluntary prepayment of Term Loan debt.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Provision for income taxes.</i><i>&#xa0;&#xa0;&#xa0;&#xa0;</i>The effective income tax rates for the years ended December 31, 2018 and 2017 were 22.5% and 21.3%, respectively. The reduction of the U.S. federal statutory tax rate from 35% to 21% as a result of the Tax Act was more than offset by the 2017&#xa0;one-time, non-cash&#xa0;$28.4 million benefit from revaluing our net deferred tax liabilities in accordance with the&#xa0;Tax Act.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Net income attributable to Generac Holdings Inc.</i>&#xa0;&#xa0;&#xa0;&#xa0;The increase in net income attributable to Generac Holdings Inc. was primarily due to the factors outlined above, partially offset by an increase in net income attributable to noncontrolling interests.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Adjusted EBITDA. </i>Adjusted EBITDA margins for the Domestic segment for the year ended December 31, 2018 were 24.8% of net sales as compared to 22.2% of net sales for the year ended December 31, 2017. Adjusted EBITDA margin in 2018&#xa0;benefitted from improved operating leverage, favorable sales mix from higher shipments of home standby generators, a favorable pricing environment, lower promotional costs, and focused margin improvement initiatives. These benefits were partially offset by an increase in employee costs and general inflationary pressures.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Adjusted EBITDA margins for the International segment, before deducting for non-controlling interests, for the year ended December 31, 2018 were 7.9% of net sales as compared to 8.5% of net sales for the year ended December 31, 2017. The slight decrease in EBITDA margin is due to an unfavorable sales mix as 2017&#xa0;included higher shipments of portable generators following large-scale outages from Hurricane Maria. This&#xa0;unfavorable sales mix was partially offset by increased leverage of fixed operating costs in 2018.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>Adjusted net income. </i>Adjusted Net Income of $292.2 million for the year ended December 31, 2018 increased 37.9% from $211.9&#xa0;million for the year ended December 31, 2017, due to the factors outlined above, partially offset by an increase in cash income tax expense.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Liquidity and Financial P</b><b>osition</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our primary cash requirements include payment for our raw material and component supplies, salaries &amp; benefits, facility and lease costs, operating expenses, interest and principal payments on our debt and capital expenditures. We finance our operations primarily through cash flow generated from operations and, if necessary, borrowings under our ABL Facility.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     31
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our credit agreements originally provided for a $1.2 billion term loan B credit facility (Term Loan) and include a $300.0 million uncommitted incremental term loan facility. The Term Loan currently matures on December 13, 2026 and bears interest at rates based upon either a base rate plus an applicable margin of 0.75% or adjusted LIBOR rate plus an applicable margin of 1.75%. The Term Loan does not require an Excess Cash Flow payment if our secured leverage ratio is maintained below 3.75 to 1.00 times. As of December 31, 2019, our secured leverage ratio was 1.50 to 1.00 times, and we were in compliance with all covenants of the Term Loan. There are no financial maintenance covenants on the Term Loan.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our credit agreements also provide for the $300.0 million ABL Facility, which matures on&#xa0;June 12, 2023. As of December 31, 2019, there were $31.0 million of borrowings outstanding and $268.6 million of availability under the ABL Facility, net of outstanding letters of credit. We were&#xa0;in compliance with all covenants of the ABL Facility as of December 31, 2019.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In August 2015, our Board of Directors approved a $200.0 million stock repurchase program, which we completed in the third quarter of 2016. In October 2016, our Board of Directors approved a new $250.0 million stock repurchase program, which expired in the fourth quarter of 2018. In September 2018, the Board of Directors approved another stock repurchase program, which commenced in October 2018, and under which we may repurchase an additional $250.0 million of common stock over 24 months from time to time, in amounts and at prices we deem appropriate, subject to market conditions and other considerations. During the year ended December 31, 2019, no repurchases were made. Since the inception of all programs, we have repurchased 8,676,706 shares of our common stock for $305.5 million (an average repurchase price of&#xa0;$35.21 per share), all funded with cash on hand.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Long-term L</b><b>iquidity</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We believe that our cash flow from operations and availability under our ABL Facility and other short-term lines of credit, combined with our favorable tax attributes (which result in a lower cash tax rate as compared to the U.S. statutory tax rate) provide us with sufficient capital to continue to grow our business in the future. We may use a portion of our cash flow to pay interest and principal on our outstanding debt as well as repurchase shares of our common stock, impacting the amount available for working capital, capital expenditures and other general corporate purposes. As we continue to expand our business, we may require additional capital to fund working capital, capital expenditures or acquisitions.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Cash F</b><b>low</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Year ended December 31, 201</i></b><b><i>9</i></b><b><i> compared</i></b><b><i> to year ended December 31, 2018</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table summarizes our cash flows by category for the periods presented:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash provided by operating activities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">308,887</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">247,227</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,660</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24.9</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash used in investing activities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(170,078</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(108,894</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(61,184</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56.2</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash used in financing activities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(41,918</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(52,034</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,116</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-19.4</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The increase in net cash provided by operating activities was primarily driven by the monetization of previous working capital investments and an increase in operating earnings compared to prior year.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Net cash used in investing activities for the year ended December 31, 2019 primarily represented&#xa0;cash payments of $112.0 million related to the acquisition of businesses and $60.8 million for the purchase of property and equipment. Net cash used in investing activities for the year ended December 31, 2018 primarily consisted of cash payments of $65.4 million related to the acquisition of businesses and $47.6 million for the purchase of property and equipment.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Net cash used in financing activities for the year ended December 31, 2019 primarily consisted of $112.6 million of debt repayments ($53.1 million of long-term borrowings and $59.5 million of short-term borrowings), $6.4 million of taxes paid related to equity awards, and $5.5 million of contingent consideration for acquired businesses. These payments were partially offset by $75.0 million cash proceeds from borrowings ($73.3 million for short-term borrowings and $1.7 million for long-term borrowings) and $9.4 million of proceeds from the exercise of stock options.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Net cash used in financing activities for the year ended December 31, 2018 primarily consisted of $129.7 million of debt repayments ($101.8 million of long-term borrowings and $27.9 million of short-term borrowings), $25.7 million for the repurchase of our common stock, and $5.7 million of taxes paid related to equity awards. These payments were partially offset by $105.4 million of cash proceeds from borrowings ($54.0 million for short-term borrowings and $51.4 million for long-term borrowings) and $5.6 million of proceeds from the exercise of stock options.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     32
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Year</i></b><b><i> ended December 31, 201</i></b><b><i>8</i></b><b><i> compared</i></b><b><i> to year ended December 31, 2017</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table summarizes our cash flows by category for the periods presented:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
    </tr>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>$ Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>% Change</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash provided by operating activities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">247,227</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">257,322</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,095</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-3.9</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash used in investing activities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(108,894</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(28,128</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(80,766</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">287.1</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash used in financing activities</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(52,034</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(160,143</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">108,109</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-67.5</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The decrease in net cash provided by operating activities was primarily driven by increased working capital investment due to strong organic growth and incremental inventory purchases ahead of expected tariff changes, which was partially offset by an increase in operating earnings.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Net cash used in investing activities for the year ended December 31, 2018 primarily represented&#xa0;cash payments of $65.4 million related to the acquisition of businesses and $47.6 million for the purchase of property and equipment. Net cash used in investing activities for the year ended December 31, 2017 primarily consisted of cash payments for the purchase of property and equipment.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Net cash used in financing activities for the year ended December 31, 2018 primarily consisted of $129.7 million of debt repayments ($101.8 million of long-term borrowings and $27.9 million of short-term borrowings), $25.7 million for the repurchase of our common stock, and $5.7 million of taxes paid related to equity awards. These payments were partially offset by $105.4 million of cash proceeds from borrowings ($54.0 million for short-term borrowings and $51.4 million for long-term borrowings) and $5.6 million of proceeds from the exercise of stock options.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Net cash used in financing activities for the year ended December 31, 2017 primarily consisted of $232.4 million of debt repayments ($117.5 million of long-term borrowings and $114.9 million of short-term borrowings), $30.0 million for the repurchase of our common stock, $5.9 million of taxes paid related to equity awards and $3.9 million of payments for debt issuance costs. These payments were partially offset by $105.1 million cash proceeds from borrowings ($102.0 million for short-term borrowings and $3.1 million for long-term borrowings) and $7.0 million of proceeds from the exercise of stock options.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Senior Secured Credit F</b><b>acilities</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note 12, &#x201c;Credit Agreements,&#x201d; to the consolidated financial statements in Item 8 and the &#x201c;Liquidity and Financial Position&#x201d; section included in Item 7 of this Annual Report on Form 10-K for information on the senior secured credit facilities.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Covenant C</b><b>ompliance</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Term Loan contains restrictions on the Company&#x2019;s ability to pay distributions and dividends. Payments can be made to the Company or other parent companies for certain expenses such as operating expenses in the ordinary course, fees and expenses related to any debt or equity offering and to pay franchise or similar taxes. Dividends can be used to repurchase equity interests, subject to limitations in certain circumstances. Additionally, the Term Loan restricts the aggregate amount of dividends and distributions that can be paid and, in certain circumstances, requires pro forma compliance with certain fixed charge coverage ratios or gross leverage ratios, as applicable, in order to pay certain dividends and distributions. The Term Loan also contains other affirmative and negative covenants that, among other things, limit the incurrence of additional indebtedness, liens on property, sale and leaseback transactions, investments, loans and advances, mergers or consolidations, asset sales, acquisitions, transactions with affiliates, prepayments of certain other indebtedness and modifications of our organizational documents. The Term Loan does not contain any financial maintenance covenants.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Term Loan contains customary events of default, including, among others, nonpayment of principal, interest or other amounts, failure to perform covenants, inaccuracy of representations or warranties in any material respect, cross-defaults with other material indebtedness, certain undischarged judgments, the occurrence of certain ERISA, bankruptcy or insolvency events, or the occurrence of a change in control (as defined in the Term Loan). A bankruptcy or insolvency event of default will cause the obligations under the Term Loan to automatically become immediately due and payable.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The ABL Facility also contains covenants and events of default substantially similar to those in the Term Loan, as described above.&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     33
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Contractual O</b><b>bligations</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table summarizes our expected payments for significant contractual obligations as of December 31, 2019, using the interest rates in effect as of that date:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: bottom;">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>(U.S. Dollars in thousands)</b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Less than 1 Year</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2 - 3 Years</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>4 - 5 Years</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>After 5 Years</b></b></p> </td>
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Long-term debt, including current portion (1)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">832,236</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">553</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,683</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">830,000</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease obligations, including current portion</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,962</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,830</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,479</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,174</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,479</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest on long-term debt and finance lease obligations</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">218,085</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,479</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">60,539</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">60,336</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">66,731</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating leases (2)</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50,542</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,511</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,302</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,755</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,974</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
    </tr>
    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total contractual cash obligations</p> </td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,126,825</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">42,373</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">80,003</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">73,265</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
     <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">931,184</td>
     <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(1) The Term Loan matures on December 13, 2026. The ABL Facility provides for a $300.0 million senior secured ABL revolving credit facility, which matures on June 12, 2023. There was no outstanding balance on the ABL Facility classified as long-term as of December 31, 2019.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">(2) Includes future cash disbursements for three leases entered into in December 2019 for which there is not a corresponding right of use asset or lease liability recorded in the Consolidated Balance Sheets for the year ended December 31, 2019, due to the leases having a commencement date in 2020. Total payments to be made over the lease term for these three leases total $5.8 million.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In 2019, the Company terminated its domestic Pension Plan. In connection with the termination, all obligations were settled in the fourth quarter of 2019 through the purchase of annuities and lump sum distributions.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Capital E</b><b>xpenditures</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our operations require capital expenditures for technology, research &amp; development, tooling, equipment, capacity expansion, IT systems &amp; infrastructure and upgrades. Capital expenditures were $60.8&#xa0;million, $47.6 million and $33.3 million for the years ended December 31, 2019, 2018 and 2017, respectively, and were funded through cash from operations.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Off-Balance Sheet A</b><b>rrangements</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We have an arrangement with a finance company to provide floor plan financing for selected dealers. This arrangement provides liquidity for our dealers by financing dealer purchases of products with credit availability from the finance company. We receive payment from the finance company after shipment of product to the dealer and our dealers are given a longer period of time to pay the finance company. If our dealers do not pay the finance company, we may be required to repurchase the applicable inventory held by the dealer. We do not indemnify the finance company for any credit losses they may incur.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total inventory financed under this arrangement accounted for approximately 11% and 10% of net sales for the years ended December 31, 2019 and 2018, respectively. The amount financed by dealers which remained outstanding was $49.6&#xa0;million and $47.2 million as of December 31, 2019 and 2018, respectively.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Critical Accounting P</b><b>olicies</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In preparing the financial statements in accordance with U.S. GAAP, management is required to make estimates and assumptions that have an impact on the asset, liability, revenue and expense amounts reported. These estimates can also affect our supplemental information disclosures, including information about contingencies, risk and financial condition. We believe, given current facts and circumstances, that our estimates and assumptions are reasonable, adhere to U.S. GAAP, and are consistently applied. Inherent in the nature of an estimate or assumption is the fact that actual results may differ from estimates and estimates may vary as new facts and circumstances arise. We make routine estimates and judgments in determining net realizable value of accounts receivable, inventories, property and equipment, prepaid expenses, product warranties and other reserves. Management believes our most critical accounting estimates and assumptions are in the following areas: goodwill and other indefinite-lived intangible asset impairment assessment; business combinations and purchase accounting; and income taxes.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Goodwill and Other </i></b><b><i>Indefinite-Lived </i></b><b><i>I</i></b><b><i>ntangible</i></b><b><i> A</i></b><b><i>ssets</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note 2, &#x201c;Significant Accounting Policies &#x2013; Goodwill and Other Indefinite-Lived Intangible Assets,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the Company&#x2019;s policy regarding the accounting for goodwill and other intangible assets. The Company performed the required annual impairment tests for goodwill and other indefinite-lived intangible assets for the fiscal years 2019, 2018 and 2017, and found no impairment.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">When preparing a discounted cash flow analysis for purposes of our annual impairment test, we make a number of key estimates and assumptions. We estimate the future cash flows of the business based on historical and forecasted revenues and operating costs. This, in turn, involves further estimates, such as estimates of future growth rates and inflation rates. In addition, we apply a discount rate to the estimated future cash flows for the purpose of the valuation. This discount rate is based on the estimated weighted average cost of capital for the business and may change from year to year. Weighted average cost of capital includes certain assumptions such as market capital structures, market betas, risk-free rate of return and estimated costs of borrowing.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     34
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In our October 31, 2019 impairment test calculation, the Latin America reporting unit had an estimated fair value that exceeded its carrying value by approximately 10%. The carrying value of the Latin America goodwill was $48.1 million. Key financial assumptions utilized to determine the fair value of the reporting unit includes revenue growth levels that reflect recovering end markets, an expanding customer and project pipeline, increased sales of service parts and service contracts, improving profit margins, a 3% terminal growth rate and an 11.1% discount rate. The reporting unit&#x2019;s fair value would approximate its carrying value with a 100 basis point increase in the discount rate or a 100 basis point reduction in the sales continuous annual growth rate and terminal growth rate. As of the October 31, 2019 impairment test date, there was&#xa0;no other reporting unit&#xa0;with a carrying value that was at risk of exceeding its fair value.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As noted above, a considerable amount of management judgment and assumptions are required in performing the goodwill and indefinite-lived intangible asset impairment tests. While we believe our judgments and assumptions are reasonable, different assumptions could change the estimated fair values. A number of factors, many of which we have no ability to control, could cause actual results to differ from the estimates and assumptions we employed. These factors include:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">a prolonged global or regional economic downturn;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">a significant decrease in the demand for our products;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">the inability to develop new and enhanced products and services in a timely manner;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">a significant adverse change in legal factors or in the business climate;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">an adverse action or assessment by a regulator;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">successful efforts by our competitors to gain market share in our markets;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">disruptions to the Company&#x2019;s business;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">inability to effectively integrate acquired businesses;</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">unexpected or unplanned changes in the use of assets or entity structure; and</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">business divestitures.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">If management's estimates of future operating results change or if there are changes to other assumptions due to these factors, the estimate of the fair values may change significantly. Such change could result in impairment charges in future periods, which could have a significant impact on our operating results and financial condition.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Business </i></b><b><i>C</i></b><b><i>ombinations and </i></b><b><i>P</i></b><b><i>urchase </i></b><b><i>A</i></b><b><i>ccounting</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We account for business combinations using the acquisition method of accounting, and accordingly, the assets and liabilities of the acquired business are recorded at their respective fair values. The excess of the purchase price over the estimated fair value of assets and liabilities is recorded as goodwill. Assigning fair market values to the assets acquired and liabilities assumed at the date of an acquisition requires knowledge of current market values, the values of assets in use, and often requires the application of judgment regarding estimates and assumptions. While the ultimate responsibility resides with management, for material acquisitions we retain the services of certified valuation specialists to assist with assigning estimated values to certain acquired assets and assumed liabilities, including intangible assets and tangible long-lived assets. Acquired intangible assets, excluding goodwill, are valued using certain discounted cash flow methodologies based on future cash flows specific to the type of intangible asset purchased. This methodology incorporates various estimates and assumptions, the most significant being projected revenue growth rates, profit&#xa0;margins, and forecasted cash flows based on the discount rate and terminal growth rate. Refer to Note 1, &#x201c;Description of Business,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the Company&#x2019;s business acquisitions.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Income T</i></b><b><i>axes</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We account for income taxes in accordance with ASC 740, <i>Income Taxes</i>. Our estimate of income taxes payable, deferred income taxes and the effective tax rate is based on an analysis of many factors including interpretations of federal, state and international income tax laws; the difference between tax and financial reporting bases of assets and liabilities; estimates of amounts currently due or owed in various jurisdictions; and current accounting standards. We review and update our estimates on a quarterly basis as facts and circumstances change and actual results are known.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In assessing the realizability of the deferred tax assets on our balance sheet, we consider whether it is more likely than not that some portion or all of the deferred tax assets will not be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the years in which those temporary differences become deductible. We consider the taxable income in prior carryback years, scheduled reversal of deferred tax liabilities, projected future taxable income and tax planning strategies in making this assessment.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note 15, &#x201c;Income Taxes&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K for further information on the Company&#x2019;s income taxes.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     35
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>New Accounting Standards</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For information with respect to new accounting pronouncements and the impact of these pronouncements on our consolidated financial statements, refer to Note 2, &#x201c;Significant Accounting Policies - New Accounting Pronouncements,&#x201d; to the consolidated financial statements in Item 8 of this Annual Report on Form 10-K.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item7a" href=""></a>Item&#xa0;7A. Quantitative and Qualitative Disclosures About Market Risk</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are exposed to market risk from changes in foreign currency exchange rates, commodity prices and interest rates. To reduce the risk from these changes, we use financial instruments from time to time. We do not hold or issue financial instruments for trading purposes.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Foreign C</b><b>urrency</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are exposed to foreign currency exchange risk as a result of transactions denominated in currencies other than the U.S. Dollar, as well as operating businesses in foreign countries. Periodically, we utilize foreign currency forward purchase and sales contracts to manage the volatility associated with certain foreign currency purchases and sales in the normal course of business. Contracts typically have maturities of twelve months or less. Realized gains and losses on transactions denominated in foreign currency are recorded as a component of cost of goods sold in the statements of comprehensive income.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following is a summary of the forty-three foreign currency contracts outstanding as of December 31, 2019 (notional amount in thousands):</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table cellpadding="0" cellspacing="0" style="width: 90%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; margin-right: auto;">
   <tbody>
    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: bottom; border-bottom: 1px solid rgb(0, 0, 0); width: 15.4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Currency </b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Denomination</b></p> </td>
     <td style="vertical-align: bottom; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: bottom; border-bottom: 1px solid rgb(0, 0, 0); width: 21.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Trade Dates</b></p> </td>
     <td style="vertical-align: bottom; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: bottom; border-bottom: 1px solid rgb(0, 0, 0); width: 20.1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Effective Dates</b></p> </td>
     <td style="vertical-align: bottom; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: bottom; border-bottom: 1px solid rgb(0, 0, 0); width: 15.6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Notional Amount</b></p> </td>
     <td style="vertical-align: bottom; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: bottom; border-bottom: 1px solid rgb(0, 0, 0); width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Expiration Date</b></p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: middle; width: 15.4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">GBP</p> </td>
     <td style="vertical-align: middle; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 21.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">11/11/19 - 12/16/19</p> </td>
     <td style="vertical-align: middle; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 20.1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">11/11/19 - 12/16/19</p> </td>
     <td style="vertical-align: middle; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 15.6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;$&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 5,110</p> </td>
     <td style="vertical-align: middle; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1/15/20 - 4/30/20</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: middle; width: 15.4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">USD</p> </td>
     <td style="vertical-align: middle; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 21.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">10/24/19 - 12/16/19</p> </td>
     <td style="vertical-align: middle; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 20.1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">10/24/19 - 12/16/19</p> </td>
     <td style="vertical-align: middle; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 15.6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;$&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 6,300</p> </td>
     <td style="vertical-align: middle; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1/15/20 - 2/19/20</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: middle; width: 15.4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">AUD</p> </td>
     <td style="vertical-align: middle; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 21.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">11/25/19 - 12/16/19</p> </td>
     <td style="vertical-align: middle; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 20.1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">11/25/19 - 12/16/19</p> </td>
     <td style="vertical-align: middle; width: 3.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 15.6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;$&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 4,800</p> </td>
     <td style="vertical-align: middle; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     <td style="vertical-align: middle; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1/29/20 - 2/19/20</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Commodity P</b><b>rices</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">We are a purchaser of commodities and components manufactured from commodities including steel, aluminum, copper and others. As a result, we are exposed to fluctuating market prices for those commodities. While such materials are typically available from numerous suppliers, commodity raw materials are subject to price fluctuations. We generally buy these commodities and components based upon market prices that are established with the supplier as part of the purchase process. Depending on the supplier, these market prices may reset on a periodic basis based on negotiated lags and calculations. To the extent that commodity prices increase and we do not have firm pricing from our suppliers, or our suppliers are not able to honor such prices, we may experience a decline in our gross margins to the extent we are not able to increase selling prices of our products or obtain manufacturing efficiencies or supply chain savings to offset increases in commodity costs.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Periodically, we engage in certain commodity risk management activities to mitigate the impact of potential price fluctuations on our financial results. These derivatives typically have maturities of less than eighteen months. As of December 31, 2019, we had no commodity forward contracts outstanding.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Interest R</b><b>ates</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of December 31, 2019, all of the outstanding debt under our Term Loan and ABL Facility was subject to floating interest rate risk. As of December 31, 2019, we had the following interest rate swap contracts outstanding (notional amount in thousands of US dollars):</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Hedged Item</b></p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Contract Date</b></p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Effective Date</b></p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Notional Amount</b></p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Fixed LIBOR Rate</b></p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Expiration Date</b></p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 19, 2017</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2019</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1.9053%</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 19, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.1263%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 19, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.2733%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 19, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.3673%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">May 31, 2023</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2019</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1.9750%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.2062%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.3717%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">June 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.5000%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">May 31, 2023</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 9, 2017</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2019</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1.8598%</p> </td>
     <td style="vertical-align:middle;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 9, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.0740%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 9, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.2367%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 9, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.2948%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">May 31, 2023</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2019</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1.7553%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2020</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">1.9737%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2021</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.1508%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:middle;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Interest Rate</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">August 30, 2017</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">July 1, 2022</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:14.8%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; 125,000</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:14.6%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2.2998%</p> </td>
     <td style="vertical-align:bottom;width:3.1%;">&#xa0;</td>
     <td style="vertical-align:middle;width:13.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">May 31, 2023</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In conjunction with the December amendment to our term loan, we also amended the interest swaps to remove the LIBOR floor, which&#xa0;resulted in minor reductions to our future dated swap rates. At December 31, 2019, the fair value of these interest rate swaps was a liability of $10.6&#xa0;million. Even after giving effect to these swaps, we are exposed to risks due to changes in interest rates with respect to the portion of our Term Loan and ABL Facility that is not covered by the swaps. A hypothetical change in the LIBOR interest rate of 100 basis points would have changed annual cash interest expense by approximately $4.0&#xa0;million (or, without the swaps in place, $9.0&#xa0;million) in 2019.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For additional information on the Company&#x2019;s foreign currency and commodity forward contracts&#xa0;and interest rate swaps, including amounts charged to the statement of comprehensive income during 2019, 2018, and 2017, refer to Note&#xa0;5, &#x201c;Derivative Instruments and Hedging Activities,&#x201d; and Note 6, &#x201c;Accumulated Other Comprehensive Loss,&#x201d; to our consolidated financial statements in Item 8 of this Annual Report on Form 10-K.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     36
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><a id="item8" href=""></a>Item&#xa0;8. Financial Statements and Supplementary Data</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><a id="auditor" href=""></a>Report of Independent Registered Public Accounting Firm</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">To the stockholders and the Board of Directors of Generac Holdings Inc.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Waukesha, WI</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Opinion on the Financial Statements</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We have audited the accompanying consolidated balance sheets of Generac Holdings Inc. and subsidiaries (the "Company") as of December 31, 2019 and 2018, the related consolidated statements of&#xa0;&#xa0;comprehensive income, stockholders' equity, and cash flows, for each of the three years in the period ended December 31, 2019, and the related notes (collectively referred to as the "financial statements"). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2019 and 2018, and the results of its operations and its cash flows for each of the three years in the period ended December 31, 2019, in conformity with accounting principles generally accepted in the United States of America.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the Company's internal control over financial reporting as of December 31, 2019, based on criteria established in <i>Internal Control &#x2014; Integrated Framework (2013)</i> issued by the Committee of Sponsoring Organizations of the Treadway Commission and our report dated February 25, 2020, expressed an unqualified opinion on the Company's internal control over financial reporting.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Change in Accounting Principle</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">As discussed in Note 10 to the financial statements, effective January 1, 2019, the Company adopted FASB Accounting Standards Update 2016-02, <i>Leases </i>(Topic 842), using the modified retrospective approach.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Basis for Opinion</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">These financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company's financial statements based on our audits. We are a public accounting firm registered with the 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.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Critical Audit Matters</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The critical audit matters communicated below are matters arising from the current-period audit of the financial statements that were communicated or required to be communicated to the audit committee and that (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which they relate.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisitions &#x2013; </i></b><b><i>Neurio and </i></b><b><i>Pika &#x2013;</i></b><b><i> </i></b><b><i>Intangible</i></b><b><i> Assets &#x2014; Refer to Note 3</i></b><b><i> to the consolidated financial statements</i></b><i>.</i></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>Critical Audit Matter Description </i></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">As discussed in Note 3 to the consolidated financial statements, on March 12, 2019, the Company acquired Neurio for a purchase price of $59.1 million. The Company accounted for the acquisition under the acquisition method of accounting for business combinations.&#xa0;Accordingly, the purchase price was allocated based on the estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $58.8 million of intangible assets, including $17.9 million of goodwill as of the acquisition date.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">On April 26, 2019, the Company acquired Pika for a purchase price of $49.1 million.&#xa0;The Company accounted for the acquisition under the acquisition method of accounting for business combinations.&#xa0;Accordingly, the purchase price was allocated based on the estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $58.2 million of intangible assets, including $19.9 million of goodwill as of the acquisition date.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     37
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">For both acquisitions, acquired intangible assets, excluding goodwill, were valued using certain discounted cash flow methodologies based on future cash flows specific to the type of intangible asset purchased. This methodology incorporated various estimates and assumptions, the most significant being projected revenue growth rates, earnings margins, and forecasted cash flows based on a discount rate and terminal growth rate.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The principle consideration for our determination that the purchase accounting for these acquisitions is a critical audit matter is that there is a high degree of auditor effort, judgment and subjectivity involved in designing and performing procedures to evaluate the reasonableness of management&#x2019;s estimates and assumptions related to the projected revenue growth rates, earnings margins and forecasted cash flows based on the discount rate and terminal growth rate.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>How the Critical Audit Matter Was Addressed in the Audit</i></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Our audit procedures related to the projected revenue growth rates, earnings margins, and forecasted cash flows and the selection of the discount rate and terminal growth rate for the intangible assets included the following, among others:</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:5pt;">&#xa0;</td>
     <td style="width:22pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">We tested the effectiveness of controls over management&#x2019;s process to estimate the fair value of the intangible assets, including those over projected revenue growth rates, earnings margins and forecasted cash flows based on the discount rate and terminal growth rate.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:5pt;">&#xa0;</td>
     <td style="width:22pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">We assessed the reasonableness of management&#x2019;s future cash flow projections and terminal growth rate by comparing the projections to historical results and relevant industry data.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:5pt;">&#xa0;</td>
     <td style="width:22pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">With the assistance of our fair value specialists, we evaluated the reasonableness of the (1) valuation methodology and (2) discount rate selected, including testing the source information&#xa0;underlying the determination of the discount rate, testing the mathematical accuracy of the calculation, and developing a range of independent estimates and comparing those to the discount rate selected by management.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:5pt;">&#xa0;</td>
     <td style="width:22pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">We evaluated whether the estimated future cash flows were consistent with evidence obtained in other areas of the audit, including impairment analyses and tax projections.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Goodwill &#x2013; Refer to Note 9</i></b><b><i> to the financial statements</i></b><i>.</i></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>Critical Audit Matter Description</i></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s evaluation of goodwill for impairment involves the comparison of the fair value of each reporting unit to its carrying value. The Company&#x2019;s estimate for each reporting unit is based on the present value of estimated future cash flows attributable to the respective reporting unit. This requires management to make significant estimates and assumptions including estimates of future growth rates and inflation rates and discount rates based on the estimated weighted average cost of capital for the business. Changes in the assumptions could have a significant impact on the fair value, which could result in an impairment charge. The Company performed their&#xa0;annual impairment assessment of its reporting units as of October 31, 2019.&#xa0; In the October 31, 2019 impairment test calculation, the Latin America reporting unit had an estimated fair value that exceeded its carrying value by approximately 10%. Because the estimated fair value exceeded the carrying value, no impairment was recorded.&#xa0; The carrying value of the Company&#x2019;s Latin America reporting unit goodwill was approximately $48.1 million. Key financial assumptions utilized to determine the fair value of the reporting unit include revenue growth levels that reflect recovering end markets, an expanding customer and project pipeline, increased sales of service parts and service contracts, improving profit margins, a 3% terminal growth rate and an 11.1% discount rate.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The principle consideration for our determination that the evaluation of goodwill is a critical audit matter is that there is a high degree of auditor effort, judgment and subjectivity involved in designing and performing procedures to evaluate the reasonableness of management&#x2019;s key financial assumptions utilized to determine the fair value of the Latin America reporting unit.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>How the Critical Audit Matter Was Addressed in the Audit</i></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Our audit procedures related to the forecasts of future revenue growth rates, improving profit margins, the terminal growth rate and the selection of the discount rate for the Latin America reporting unit included the following, among others:</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Evaluated the design and effectiveness of the controls over management&#x2019;s goodwill impairment evaluation, including those over the determination of the fair value of the reporting unit, such as controls related to management&#x2019;s forecast and the selection of the discount rate.</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Obtained the Company&#x2019;s discounted cash flow model and evaluated the valuation analysis for mathematical accuracy.</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Utilized fair value specialists to evaluate whether the valuation techniques applied by management were appropriate.</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Assessed management&#x2019;s historical ability to accurately forecast the Company&#x2019;s results of operations.</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Assessed management&#x2019;s intent and/or ability to take specific actions included in the discounted cash flow model.</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Evaluated the reasonableness of management&#x2019;s forecasts by comparing the forecasts to (1) historical results, (2) internal communications to the Board of Directors, and (3) forecasted information included in industry reports.</p> </td>
    </tr>
   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:18pt;">&#xa0;</td>
     <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Independently calculated a discount rate and compared it to the rate utilized by the Company.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">/s/ Deloitte &amp; Touche LLP</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Milwaukee, Wisconsin</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">February 25, 2020</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We have served as the Company&#x2019;s auditor since 2016.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     38
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"><b>&#xa0;&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Report of Independent Registered Public Accounting Firm</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">To the stockholders and the Board of Directors of Generac Holdings Inc.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Waukesha, Wisconsin</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Opinion on Internal Control over Financial Reporting</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We have audited the internal control over financial reporting of Generac Holdings Inc. and subsidiaries (the &#x201c;Company&#x201d;) as of December 31, 2019, based on criteria established in <i>Internal Control &#x2014; Integrated Framework (2013)</i> issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO). In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December 31, 2019, based on criteria established in <i>Internal Control &#x2014; Integrated Framework (2013)</i> issued by COSO.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the consolidated financial statements as of and for the year ended December 31, 2019, of the Company and our report dated February 25, 2020, expressed an unqualified opinion on those financial statements and included an explanatory paragraph regarding the Company's adoption of FASB Accounting Standards Update 2016-02, <i>Leases </i>(Topic 842), using the modified retrospective approach.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">As described in Management&#x2019;s Report on Internal Control over Financial Reporting, management excluded from its assessment the internal control over financial reporting at Neurio Technology Inc. (Neurio), which was acquired in March 2019, and Pika Energy, Inc (Pika), which was acquired in April 2019, and whose financial statements constitute 5.0% and 2.8% of net and total assets, respectively, 0.4% of net sales, and (2.2)% of net income of the consolidated financial statement amounts as of and for the year ended December 31, 2019. Accordingly, our audit did not include the internal control over financial reporting at Neurio and Pika.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Basis for Opinion </b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The Company&#x2019;s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting, included in the accompanying Management&#x2019;s Report on Internal Control over Financial Reporting. Our responsibility is to express an opinion on the Company&#x2019;s internal control over financial reporting based on our audit. We are a public accounting firm registered with the 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.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We conducted our audit in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial reporting was maintained in all material respects. Our audit included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, testing and evaluating the design and operating effectiveness of internal control based on the assessed risk, and performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Definition and Limitations of Internal Control over Financial Reporting</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">A company&#x2019;s internal control over financial reporting is a process designed 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. A company&#x2019;s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company&#x2019;s assets that could have a material effect on the financial statements.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">/s/ Deloitte &amp; Touche LLP</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Milwaukee, Wisconsin</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">February 25, 2020</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     39
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
   <tbody>
    <tr>
     <td colspan="1" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><a id="bs" href=""></a>Generac Holdings Inc.</p> </td>
    </tr>
    <tr>
     <td colspan="1" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;">Consolidated Balance Sheets</p> </td>
    </tr>
    <tr>
     <td colspan="1" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>(U.S. Dollars in Thousands, Except Share and Per Share Data)</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div>
   <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
    <tbody>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>December 31,</b></b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>2019</b></b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>2018</b></b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Assets</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Current assets:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Cash and cash equivalents</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030635" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">322,883</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030636" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">224,482</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Accounts receivable, less allowance for doubtful accounts of $6,968 and $4,873 at December 31, 2019 and 2018, respectively</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030637" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" scale="3">319,538</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030638" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" scale="3">326,133</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Inventories</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030641" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryNet" scale="3">522,024</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030642" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:InventoryNet" scale="3">544,750</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Prepaid expenses and other assets</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030643" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3">31,384</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030644" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3">25,404</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total current assets</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030645" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AssetsCurrent" scale="3">1,195,829</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030646" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AssetsCurrent" scale="3">1,120,769</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Property and equipment, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030647" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3">316,976</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030648" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3">278,929</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Customer lists, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030649" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:FiniteLivedCustomerListsNet" scale="3">55,552</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030650" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:FiniteLivedCustomerListsNet" scale="3">61,194</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Patents and technology, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030651" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:FiniteLivedPatentsAndTechnologyNet" scale="3">85,546</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030652" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:FiniteLivedPatentsAndTechnologyNet" scale="3">29,970</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other intangible assets, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030653" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherIntangibleAssetsNet" scale="3">8,259</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030654" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherIntangibleAssetsNet" scale="3">3,043</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Tradenames, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030655" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TradeNamesNet" scale="3">148,377</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030656" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TradeNamesNet" scale="3">152,283</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030657" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">805,284</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030658" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">764,655</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030659" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3">2,933</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030660" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3">163</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating lease and other assets</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030661" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" scale="3">46,913</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030662" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" scale="3">15,308</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total assets</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030663" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">2,665,669</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030664" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">2,426,314</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Liabilities and stockholders&#x2019; equity</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Current liabilities:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Short-term borrowings</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030667" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">58,714</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030668" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">45,583</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accounts payable</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030669" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccountsPayableCurrent" scale="3">261,977</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030670" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccountsPayableCurrent" scale="3">328,091</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accrued wages and employee benefits</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030671" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3">41,361</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030672" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3">40,819</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other accrued liabilities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030673" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3">132,629</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030674" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3">144,236</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion of long-term borrowings and finance lease obligations</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030675" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" scale="3">2,383</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030676" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" scale="3">1,977</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total current liabilities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030677" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LiabilitiesCurrent" scale="3">497,064</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030678" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LiabilitiesCurrent" scale="3">560,706</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Long-term borrowings and finance lease obligations</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030679" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3">837,767</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030680" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3">876,396</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030681" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3">96,328</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030682" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3">71,300</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating lease and other long-term liabilities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030683" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" scale="3">140,432</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030684" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" scale="3">95,647</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total liabilities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030685" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Liabilities" scale="3">1,571,591</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030686" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Liabilities" scale="3">1,604,049</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redeemable noncontrolling interest</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030687" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RedeemableNoncontrollingInterestEquityCarryingAmount" scale="3">61,227</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030688" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RedeemableNoncontrollingInterestEquityCarryingAmount" scale="3">61,004</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Stockholders&#x2019; equity:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Common stock, par value $0.01, 500,000,000 shares authorized, 71,667,726 and 71,186,418 shares issued at December 31, 2019 and 2018, respectively</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030690" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CommonStockValue" scale="3">717</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030691" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CommonStockValue" scale="3">712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Additional paid-in capital</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030698" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdditionalPaidInCapital" scale="3">498,866</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030699" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdditionalPaidInCapital" scale="3">476,116</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Treasury stock, at cost, 9,103,013 and 9,047,060 shares at December 31, 2019 and 2018, respectively</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030700" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValue" scale="3">324,551</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030701" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValue" scale="3">321,473</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Excess purchase price over predecessor basis</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030704" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:ExcessPurchasePriceOverPredecessorBasis" scale="3">202,116</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030705" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:ExcessPurchasePriceOverPredecessorBasis" scale="3">202,116</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Retained earnings</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030706" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3">1,084,383</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030707" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3">831,123</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accumulated other comprehensive loss</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030708" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">24,917</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030709" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">23,813</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Stockholders&#x2019; equity attributable to Generac Holdings Inc.</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030710" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquity" scale="3">1,032,382</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030711" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquity" scale="3">760,549</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Noncontrolling interests</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030712" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterest" scale="3">469</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030713" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterest" scale="3">712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total stockholders&#x2019; equity</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030714" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">1,032,851</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030715" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">761,261</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total liabilities and stockholders&#x2019; equity</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030716" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3">2,665,669</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030717" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3">2,426,314</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     </tr>
    </tbody>
   </table>
  </div>
  <p style="margin: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:middle;width:65.5%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>See notes to consolidated financial statements.</i></p> </td>
     <td style="vertical-align:middle;width:15.6%;">&#xa0;</td>
     <td style="vertical-align:middle;width:3.3%;">&#xa0;</td>
     <td style="vertical-align:middle;width:15.6%;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     40
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
   <tbody>
    <tr>
     <td colspan="6" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><a id="compinc" href=""></a>Generac Holdings Inc.</p> </td>
    </tr>
    <tr>
     <td colspan="6" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;">Consolidated Statements of Comprehensive Income</p> </td>
    </tr>
    <tr>
     <td colspan="6" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>(U.S. Dollars in Thousands, Except Share and Per Share Data)</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div>
   <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
    <tbody>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 55%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030718" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,204,336</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030719" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,023,464</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030720" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,679,373</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Costs of goods sold</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030721" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" scale="3">1,406,584</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030722" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" scale="3">1,298,424</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030723" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" scale="3">1,094,587</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030724" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">797,752</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030725" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:GrossProfit" scale="3">725,040</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030726" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">584,786</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating expenses:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Selling and service</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030728" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3">217,683</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030729" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3">191,887</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030730" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3">174,841</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Research and development</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030731" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3">68,394</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030732" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3">50,019</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030733" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3">42,869</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">General and administrative</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030734" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3">110,868</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030735" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3">103,841</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030736" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3">87,581</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of intangibles</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030737" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">28,644</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030738" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">22,112</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030739" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">28,861</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total operating expenses</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030740" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingExpenses" scale="3">425,589</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030741" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingExpenses" scale="3">367,859</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030742" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingExpenses" scale="3">334,152</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income from operations</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030743" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">372,163</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030744" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">357,181</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030745" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">250,634</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other (expense) income:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Interest expense</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030747" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestExpense" scale="3">41,544</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030748" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestExpense" scale="3">40,956</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030749" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestExpense" scale="3">42,667</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Investment income</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030750" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InvestmentIncomeNonoperating" scale="3">2,767</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030751" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InvestmentIncomeNonoperating" scale="3">1,893</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030752" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InvestmentIncomeNonoperating" scale="3">298</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on extinguishment of debt</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030753" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">926</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030754" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">1,332</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030755" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on pension settlement</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030756" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">10,920</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030757" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030758" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030759" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" sign="-" scale="3">1,933</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030760" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherNonoperatingIncomeExpense" sign="-" scale="3">5,710</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030761" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" sign="-" scale="3">4,566</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total other expense, net</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030762" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NonoperatingIncomeExpense" sign="-" scale="3">52,556</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030763" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NonoperatingIncomeExpense" sign="-" scale="3">46,105</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030764" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NonoperatingIncomeExpense" sign="-" scale="3">46,935</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030765" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">319,607</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030766" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">311,076</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030767" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">203,699</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030768" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3">67,299</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030769" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3">69,856</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030770" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3">44,142</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030771" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProfitLoss" scale="3">252,308</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030772" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ProfitLoss" scale="3">241,220</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030773" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProfitLoss" scale="3">159,557</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to noncontrolling interests</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030774" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" scale="3">301</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030775" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" scale="3">2,963</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030776" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" scale="3">1,749</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030777" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">252,007</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030778" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">238,257</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030779" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">157,808</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other comprehensive income (loss):</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030781" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="3">2,210</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030782" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" sign="-" scale="3">5,976</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030783" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="3">15,191</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net unrealized gain (loss) on derivatives</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56030784" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" sign="-" scale="3">13,855</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030785" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">2,924</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030786" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">3,712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pension liability adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030787" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">10,541</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030788" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">437</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030789" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">62</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss)</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030790" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">1,104</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030791" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">2,615</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030792" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3">18,965</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total comprehensive income</p> </td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030793" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" scale="3">251,204</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030794" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" scale="3">238,605</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030795" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" scale="3">178,522</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Comprehensive income (loss) attributable to noncontrolling interests</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56030796" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" sign="-" scale="3">635</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030797" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" scale="3">1,647</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56030798" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" scale="3">5,549</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Comprehensive income attributable to Generac Holdings Inc.</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030799" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3">251,839</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030800" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3">236,958</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56030801" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3">172,973</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030802" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">4.09</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030803" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">3.57</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030804" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">2.56</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Weighted average common shares outstanding - basic:</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030805" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0">61,926,986</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030806" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0">61,662,031</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030807" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0">62,040,704</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030808" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">4.03</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030809" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">3.54</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030810" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">2.53</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Weighted average common shares outstanding - diluted:</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030811" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0">62,865,446</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030812" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0">62,233,225</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56030813" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0">62,642,872</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
    </tbody>
   </table>
  </div>
  <p style="margin: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:middle;width:48.4%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>See notes to consolidated financial statements.</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     41
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td colspan="12" style="vertical-align:bottom;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><a id="equity" href=""></a>Generac Holdings Inc.</p> </td>
    </tr>
    <tr>
     <td colspan="12" style="vertical-align:bottom;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;">Consolidated Statements of Stockholders' Equity</p> </td>
    </tr>
    <tr>
     <td colspan="12" style="vertical-align:bottom;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>(U.S. Dollars in Thousands, Except Share Data)</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div>
   <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 8pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
    <tbody>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="34" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Generac Holdings Inc.</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;"><b>&#xa0;</b></td>
      <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;"><b>&#xa0;</b></td>
      <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 7%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Common Stock</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;">&#xa0;</p> <b>Additional </b> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Paid-In</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 7%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Treasury Stock </b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; width: 1%;"><b>Excess Purchase Price </b> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Over </b></b></b></p> <b>Predecessor</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Retained</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;">&#xa0;</p> <b>Accumulated Other </b> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Comprehensive</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;">&#xa0;</p> <b>Total </b> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Stockholders'</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Noncontrolling </b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;"><b>&#xa0;</b></td>
      <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Shares</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Amount</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Capital</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Shares</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Amount</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>&#xa0;Basis</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Earnings</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Income (Loss)</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Equity</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Interest</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin: 0pt; text-align: center;"><b><b><b>Total</b></b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Balance at December 31, 2016</b></p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030814" contextRef="i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" scale="0">70,261,481</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030815" contextRef="i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">702</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030816" contextRef="i_2016-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">449,049</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030817" contextRef="i_2016-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" sign="-" scale="0">7,564,874</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030818" contextRef="i_2016-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">262,402</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030819" contextRef="i_2016-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">202,116</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030820" contextRef="i_2016-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">452,119</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030821" contextRef="i_2016-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">40,163</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030822" contextRef="i_2016-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">397,189</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030823" contextRef="i_2016-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">10</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030824" contextRef="i_2016-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">397,179</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Change in noncontrolling interest share</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030826" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030827" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:ChangeInNoncontrollingInterestEquityImpact" scale="3">2,124</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030829" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030830" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030831" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030832" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030833" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:ChangeInNoncontrollingInterestEquityImpact" scale="3">2,124</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030834" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" scale="3">184</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030835" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:ChangeInNoncontrollingInterestEquityImpact" scale="3">1,940</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Unrealized gain on interest rate swaps, net of tax of $2,384</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030837" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030838" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030840" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030841" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030842" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030843" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">3,712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030844" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">3,712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030845" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030846" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">3,712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Foreign currency translation adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030870" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030871" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030873" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030874" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030875" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030876" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">15,191</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030877" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">15,191</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030878" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" sign="-" scale="3">14</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030879" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">15,177</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030880" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" scale="0">558,692</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030881" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">6</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030882" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">2,686</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030883" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030884" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030885" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030886" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030887" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030888" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">2,692</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030889" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030890" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">2,692</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net share settlement of restricted stock awards</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030891" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" sign="-" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030892" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030893" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030894" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" scale="0">39,500</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030895" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">1,591</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030896" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030897" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030898" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030899" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">1,591</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030900" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030901" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">1,591</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Stock repurchases</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030902" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" sign="-" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030903" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030904" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030905" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" scale="0">844,500</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030906" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" scale="3">30,012</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030907" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030908" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030909" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030910" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" scale="3">30,012</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030911" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030912" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" scale="3">30,012</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Share-based compensation</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030914" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030915" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">10,205</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030917" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030918" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030919" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030920" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030921" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">10,205</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030922" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030923" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">10,205</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Pension liability adjustment, net of tax of $21</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030925" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030926" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030928" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030929" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030930" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030931" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">62</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030932" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">62</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030933" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030934" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">62</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Redemption value adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030953" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030955" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030959" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030961" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030963" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">909</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030964" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030965" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">909</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030966" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030967" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">909</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030969" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030970" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030972" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030973" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030974" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">157,808</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030975" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030976" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">157,808</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030977" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" scale="3">119</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030978" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" scale="3">157,927</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="width: 34%;">&#xa0;</td>
      <td style="padding-bottom: 1px; width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="padding-bottom: 1px; width: 1%;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Balance at December 31, 2017</b></p> </td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030979" contextRef="i_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" scale="0">70,820,173</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030980" contextRef="i_2017-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">708</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030981" contextRef="i_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">459,816</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030982" contextRef="i_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" sign="-" scale="0">8,448,874</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030983" contextRef="i_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">294,005</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030984" contextRef="i_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">202,116</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030985" contextRef="i_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">610,836</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56030986" contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">21,198</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030987" contextRef="i_2017-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">554,041</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030988" contextRef="i_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">279</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030989" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">554,320</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Unrealized gain on interest rate swaps, net of tax of $1,027</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030991" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030992" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030994" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030995" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030996" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030997" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">2,924</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030998" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">2,924</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56030999" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031000" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">2,924</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Foreign currency translation adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031015" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031016" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031018" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031019" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031021" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031023" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" sign="-" scale="3">5,976</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031024" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" sign="-" scale="3">5,976</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031026" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" sign="-" scale="3">2</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031028" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" sign="-" scale="3">5,978</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031030" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" scale="0">366,245</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031032" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">4</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031034" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">1,737</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031036" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031038" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031039" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031040" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031041" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031042" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">1,741</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031043" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031044" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">1,741</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net share settlement of restricted stock awards</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031045" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" sign="-" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031046" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031047" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031048" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" scale="0">38,186</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031049" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">1,812</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031050" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031051" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031052" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031053" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">1,812</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031054" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031055" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">1,812</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Stock repurchases</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031056" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" sign="-" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031057" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031058" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031059" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" scale="0">560,000</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031060" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" scale="3">25,656</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031061" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031062" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031063" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031064" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" scale="3">25,656</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031065" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031066" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramValue" scale="3">25,656</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Cash dividends paid to noncontrolling interest of subsidiary</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031068" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031069" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031071" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031072" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031073" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031074" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031075" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031076" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" scale="3">314</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031077" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" scale="3">314</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Share-based compensation</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031079" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031080" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">14,563</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031082" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031083" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031084" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031085" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031086" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">14,563</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031087" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031088" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">14,563</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Pension liability adjustment, net of tax of $154</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031090" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031091" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031093" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031094" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031095" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031096" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">437</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031097" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">437</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031098" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031099" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">437</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Redemption value adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031114" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031115" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031117" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031118" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031119" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:MinorityInterestChangeInRedemptionValue" sign="-" scale="3">17,970</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031120" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031121" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:MinorityInterestChangeInRedemptionValue" sign="-" scale="3">17,970</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031122" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031123" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:MinorityInterestChangeInRedemptionValue" sign="-" scale="3">17,970</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031125" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031126" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031129" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031131" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031132" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">238,257</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031134" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031136" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">238,257</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031138" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" scale="3">749</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031140" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" scale="3">239,006</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="width: 34%;">&#xa0;</td>
      <td style="padding-bottom: 1px; width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="padding-bottom: 1px; width: 1%;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Balance at December 31, 2018</b></p> </td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031142" contextRef="i_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" scale="0">71,186,418</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031144" contextRef="i_2018-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">712</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031146" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">476,116</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031147" contextRef="i_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" sign="-" scale="0">9,047,060</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031148" contextRef="i_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">321,473</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031149" contextRef="i_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">202,116</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031150" contextRef="i_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">831,123</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031151" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">23,813</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031152" contextRef="i_2018-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">760,549</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031153" contextRef="i_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">712</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">$</td>
      <td style="width: 3%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031154" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">761,261</ix:nonFraction></td>
      <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Change in noncontrolling interest share</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031156" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031157" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031159" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031160" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031161" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031162" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031163" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031164" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" scale="3">154</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031165" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation" scale="3">154</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Unrealized loss on interest rate swaps, net of tax of ($4,877)</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031167" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031168" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031170" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031171" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031172" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031173" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" sign="-" scale="3">13,855</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031174" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" sign="-" scale="3">13,855</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031175" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031176" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" sign="-" scale="3">13,855</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Foreign currency translation adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031189" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031190" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031192" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031193" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031194" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031195" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">2,210</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031196" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">2,210</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031197" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" sign="-" scale="3">30</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031198" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3">2,180</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031199" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" scale="0">481,308</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031200" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">5</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031201" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">6,056</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031202" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031203" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031204" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031205" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031206" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031207" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">6,061</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031208" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031209" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" scale="3">6,061</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net share settlement of restricted stock awards</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><ix:nonFraction id="c56031210" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:zerodash" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" sign="-" scale="0">&#x2013;</ix:nonFraction></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><ix:nonFraction id="c56031211" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><ix:nonFraction id="c56031212" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031213" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" scale="0">55,953</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031214" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">3,078</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031215" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031216" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031217" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031218" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">3,078</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031219" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031220" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3">3,078</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Cash dividends paid to noncontrolling interest of subsidiary</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><ix:nonFraction id="c56031222" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><ix:nonFraction id="c56031223" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 3%;"><ix:nonFraction id="c56031225" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 1%;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031226" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031227" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031228" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031229" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031230" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" scale="3">285</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">(<ix:nonFraction id="c56031231" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" scale="3">285</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Share-based compensation</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031233" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031234" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">16,694</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031236" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031237" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031238" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031239" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031240" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">16,694</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031241" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031242" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3">16,694</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Pension liability adjustment and settlement, net of tax</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031244" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031245" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031247" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031248" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031249" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031250" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">10,541</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031251" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">10,541</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031252" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031253" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" sign="-" scale="3">10,541</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Redemption value adjustment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031255" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031256" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031260" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031262" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031264" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">1,253</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031266" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031268" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">1,253</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031270" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031272" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">1,253</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031276" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031278" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#x2013;</em></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031280" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031281" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031282" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">252,007</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031283" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031284" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">252,007</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031285" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" scale="3">226</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt;">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;"><ix:nonFraction id="c56031286" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" scale="3">252,233</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="width: 34%;">&#xa0;</td>
      <td style="padding-bottom: 1px; width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">&#xa0;</td>
      <td style="border-bottom: 1px solid rgb(0, 0, 0); width: 3%;">&#xa0;</td>
      <td style="padding-bottom: 1px; width: 1%;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; width: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Balance at December 31, 2019</b></p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031287" contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" scale="0">71,667,726</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031288" contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">717</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031289" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">498,866</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031290" contextRef="i_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesOutstanding" sign="-" scale="0">9,103,013</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031291" contextRef="i_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">324,551</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031292" contextRef="i_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">202,116</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031293" contextRef="i_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">1,084,383</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031294" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">24,917</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031295" contextRef="i_2019-12-31_StatementEquityComponentsAxis-ParentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">1,032,382</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031296" contextRef="i_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">469</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 3%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031297" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">1,032,851</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 8pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     </tr>
    </tbody>
   </table>
  </div>
  <p style="margin: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:middle;width:22.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>See notes to consolidated financial statements.</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     42
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td colspan="6" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><a id="cf" href=""></a>Generac Holdings Inc.</p> </td>
    </tr>
    <tr>
     <td colspan="6" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;">Consolidated Statements of Cash Flows</p> </td>
    </tr>
    <tr>
     <td colspan="6" style="vertical-align:middle;width:100%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>(U.S. Dollars in Thousands)</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div>
   <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
    <tbody>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom;">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 55%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Operating activities</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031299" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProfitLoss" scale="3">252,308</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031300" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ProfitLoss" scale="3">241,220</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031301" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProfitLoss" scale="3">159,557</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjustments to reconcile net income to net cash provided by operating activities:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Depreciation</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031303" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Depreciation" scale="3">32,265</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031304" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Depreciation" scale="3">25,296</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031305" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Depreciation" scale="3">23,127</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Amortization of intangible assets</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031306" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">28,644</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031307" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">22,112</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031308" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">28,861</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Amortization of original issue discount and deferred financing costs</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031309" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" scale="3">4,712</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031310" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" scale="3">4,749</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031311" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" scale="3">3,516</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Loss on extinguishment of debt</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031312" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">926</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031313" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">1,332</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031314" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Loss on pension settlement</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031315" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">10,920</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031316" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031317" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred income taxes</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031318" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3">18,733</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031319" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3">23,600</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031320" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3">19,502</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Share-based compensation expense</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031321" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3">16,694</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031322" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3">14,563</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031323" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3">10,205</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Other</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031324" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherNoncashIncomeExpense" sign="-" scale="3">1,086</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031325" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherNoncashIncomeExpense" sign="-" scale="3">2,474</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031326" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherNoncashIncomeExpense" sign="-" scale="3">410</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Net changes in operating assets and liabilities, net of acquisitions:</p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Accounts receivable</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031328" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" sign="-" scale="3">8,231</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031329" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3">43,243</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031330" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3">32,857</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Inventories</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031331" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" sign="-" scale="3">26,369</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031332" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" scale="3">152,594</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031333" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" scale="3">22,986</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Other assets</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031334" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3">358</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031335" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3">6,362</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031336" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3">14,783</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Accounts payable</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031337" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" sign="-" scale="3">69,404</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031338" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3">86,359</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031339" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3">42,788</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Accrued wages and employee benefits</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031340" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" sign="-" scale="3">3,724</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031341" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" scale="3">12,626</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031342" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" scale="3">6,105</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Other accrued liabilities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031343" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" sign="-" scale="3">16,252</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031344" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" scale="3">16,972</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031345" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" scale="3">37,029</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Excess tax benefits from equity awards</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031346" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" scale="3">2,263</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031347" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" scale="3">1,877</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031348" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" scale="3">3,152</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash provided by operating activities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031349" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3">308,887</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031350" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3">247,227</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031351" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3">257,322</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Investing activities</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Proceeds from sale of property and equipment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031353" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="3">95</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031354" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="3">214</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031355" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="3">82</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Proceeds from beneficial interest in securitization transactions</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031356" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" scale="3">2,630</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031357" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" scale="3">3,933</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031358" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" scale="3">3,794</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expenditures for property and equipment</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031359" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">60,802</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031360" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">47,601</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031361" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">33,261</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Acquisition of business, net of cash acquired</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031362" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3">112,001</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031363" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3">65,440</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031364" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" sign="-" scale="3">1,257</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash used in investing activities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031365" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="3">170,078</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031366" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="3">108,894</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031367" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="3">28,128</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Financing activities</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Proceeds from short-term borrowings</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031369" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ProceedsFromShortTermDebt" scale="3">73,340</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031370" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromShortTermDebt" scale="3">53,965</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031371" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromShortTermDebt" scale="3">101,991</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Proceeds from long-term borrowings</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031372" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" scale="3">1,660</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031373" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" scale="3">51,425</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031374" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" scale="3">3,069</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Repayments of short-term borrowings</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031375" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RepaymentsOfShortTermDebt" scale="3">59,518</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031376" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RepaymentsOfShortTermDebt" scale="3">27,880</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031377" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RepaymentsOfShortTermDebt" scale="3">114,874</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Repayments of long-term borrowings and finance lease obligations</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031378" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities" scale="3">53,049</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031379" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities" scale="3">101,827</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031380" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities" scale="3">117,475</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Stock repurchases</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031381" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031382" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3">25,656</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031383" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3">30,012</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Payment of contingent acquisition consideration</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031384" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="3">5,550</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031385" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031386" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Payment of debt issuance costs</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031387" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" scale="3">1,473</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031388" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" scale="3">1,702</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031389" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" scale="3">3,901</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash dividends paid to noncontrolling interest of subsidiary</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031390" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" scale="3">285</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031391" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" scale="3">314</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031392" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" sign="-" scale="3">&#x2013;</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Taxes paid related to equity awards</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031393" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">6,438</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031394" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">5,659</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031395" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">5,892</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Proceeds from the exercise of stock options</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031396" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3">9,395</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031397" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3">5,614</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031398" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3">6,951</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net cash used in financing activities</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031399" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" sign="-" scale="3">41,918</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031400" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" sign="-" scale="3">52,034</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031401" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" sign="-" scale="3">160,143</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Effect of exchange rate changes on cash and cash equivalents</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031402" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" scale="3">1,510</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031403" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" sign="-" scale="3">289</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031404" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" scale="3">2,149</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net increase in cash and cash equivalents</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031405" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease" scale="3">98,401</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031406" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease" scale="3">86,010</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031407" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease" scale="3">71,200</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash and cash equivalents at beginning of period</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031408" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">224,482</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031409" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">138,472</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031410" contextRef="i_2016-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">67,272</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash and cash equivalents at end of period</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031411" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">322,883</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031412" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">224,482</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031413" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3">138,472</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
      <td>&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Supplemental disclosure of cash flow information</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Cash paid during the period</b></p> </td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031416" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestPaidNet" scale="3">35,465</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031417" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestPaidNet" scale="3">41,007</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031418" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestPaidNet" scale="3">41,105</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
     <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
      <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income taxes</p> </td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031419" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" scale="3">61,767</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031420" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" scale="3">41,044</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031421" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" scale="3">23,836</ix:nonFraction></td>
      <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     </tr>
    </tbody>
   </table>
  </div>
  <p style="margin: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:middle;width:42.1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>See notes to consolidated financial statements.</i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     43
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><a id="notes" href=""></a>Generac Holdings Inc.<br /> Notes to Consolidated Financial Statements</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:7.2pt;margin-right:0pt;margin-top:0pt;text-align:center;"><b>Years Ended December 31, 201</b><b>9</b><b>, 201</b><b>8</b><b>, and </b><b>201</b><b>7</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>(</i><i>U.S. </i><i>Dollars in Thousands, Except Share and Per Share Data)</i></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>&#xa0;</i></p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock" id="c1434638" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">1.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Description of Business</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Founded in <em style="font-weight: inherit; font-style: normal;">1959,</em> Generac Holdings Inc. (the Company) is a leading global designer and manufacturer of a wide range of energy technology solutions. The Company provides power generation equipment, energy storage systems, and other power products&#xa0;serving the residential, light commercial and industrial markets. Generac&#x2019;s power products and solutions are available globally through a broad network of independent dealers, distributors, retailers, e-commerce partners, wholesalers, and equipment rental companies,&#xa0;as well as sold direct to certain end user customers.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Over the years, the Company has executed a number of acquisitions that support its strategic plan (refer to Item <em style="font-weight: inherit; font-style: normal;">1</em> in this Annual Report on Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for discussion of our "Powering Our Future" strategic plan). A summary of acquisitions affecting the reporting periods presented include:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> January 2017, </em>the Company acquired Motortech GmbH (Motortech), headquartered in Celle, Germany. Motortech is a leading manufacturer of gaseous-engine control systems and accessories, which are sold primarily to European gas-engine manufacturers and to aftermarket customers.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company acquired Selmec Equipos Industriales, S.A. de C.V. (Selmec), headquartered in Mexico City, Mexico. Selmec is a designer and manufacturer of industrial generators ranging from <em style="font-weight: inherit; font-style: normal;">10kW</em> to <em style="font-weight: inherit; font-style: normal;">2,750kW.</em> Selmec offers a market-leading service platform and specialized engineering capabilities, together with robust integration, project management and remote monitoring services.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> February 2019, </em>the Company acquired a majority share of Captiva Energy Solutions Private Limited (Captiva). Captiva, founded in <em style="font-weight: inherit; font-style: normal;">2010</em> and headquartered in Kolkata, India, specializes in customized industrial generators for the India market.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> March 2019, </em>the Company acquired Neurio Technology Inc. (Neurio), founded in <em style="font-weight: inherit; font-style: normal;">2005</em> and headquartered in Vancouver, British Columbia. Neurio is a leading energy data company focused on metering technology and sophisticated analytics to optimize energy use within a home or business.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#x25cf;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> April 2019, </em>the Company acquired Pika Energy, Inc. (Pika), founded in <em style="font-weight: inherit; font-style: normal;">2010</em> and located in Westbrook, Maine. Pika is a designer and manufacturer of battery storage technologies that capture and store solar or grid power for homeowners and businesses, and is also a manufacturer of advanced power electronics, software and controls for smart energy storage and management.</p> </td>
     </tr>
    </tbody>
   </table>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="c1434639" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">2.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Summary of</b><b> Accounting Policies </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ConsolidationPolicyTextBlock" id="c56114338" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Principles of Consolidation</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The consolidated financial statements include the accounts of the Company and its subsidiaries that are consolidated in conformity with U.S. GAAP. All intercompany amounts and transactions have been eliminated in consolidation.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="c56114339" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Cash </b><b>and Cash </b><b>Equivalents</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company considers all highly liquid investments purchased with an original maturity of <em style="font-weight: inherit; font-style: normal;">three</em> months or less to be cash equivalents.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ConcentrationRiskCreditRisk" id="c56114341" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Concentration of Credit Risk</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains the majority of its domestic cash in <em style="font-weight: inherit; font-style: normal;">one</em> commercial bank in multiple operating and investment accounts. Balances on deposit are insured by the Federal Deposit Insurance Corporation (FDIC) up to specified limits. Balances in excess of FDIC limits are uninsured.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">44</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">One customer accounted for approximately <ix:nonFraction id="c56031445" contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">9</ix:nonFraction>% and <ix:nonFraction id="c56031448" contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">11</ix:nonFraction>% of accounts receivable at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> respectively. <span style="-sec-ix-hidden:c56031461"><span style="-sec-ix-hidden:c56031455"><span style="-sec-ix-hidden:c56031458">No</span></span> </span><em style="font-weight: inherit; font-style: normal;">one</em> customer accounted for greater than <ix:nonFraction id="c56031468" contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">5</ix:nonFraction>%, <ix:nonFraction id="c56031471" contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">6</ix:nonFraction>%, and <ix:nonFraction id="c56031475" contextRef="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">6</ix:nonFraction>%, of net sales during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> or <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ReceivablesPolicyTextBlock" id="c56114342" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Accounts Receivable</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Receivables are recorded at their face value amount less an allowance for doubtful accounts. The Company estimates and records an allowance for doubtful accounts based on specific identification and historical experience. The Company writes off uncollectible accounts against the allowance for doubtful accounts after all collection efforts have been exhausted. Sales are generally made on an unsecured basis, and certain balances are protected by credit insurance.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:InventoryPolicyTextBlock" id="c56114343" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Inventories</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Inventories are stated at the lower of cost or market, with cost determined generally using the <em style="font-weight: inherit; font-style: normal;">first</em>-in, <em style="font-weight: inherit; font-style: normal;">first</em>-out method.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p></ix:nonNumeric><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="c56114344" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Property and Equipment </b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Property and equipment are recorded at cost and are being depreciated using the straight-line method over the estimated useful lives of the assets, which are summarized below (in years). Costs of leasehold improvements are amortized over the lesser of the term of the lease (including renewal option periods) or the estimated useful lives of the improvements. Finance lease right of use assets are included in property and equipment. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> "Leases," to the consolidated financial statements for the Company's lease disclosure.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" id="c1434640" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Land improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031627" format="ixt-sec:duryear">8</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031628" format="ixt-sec:duryear">20</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031629" format="ixt-sec:duryear">10</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031630" format="ixt-sec:duryear">40</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031631" format="ixt-sec:duryear">3</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031632" format="ixt-sec:duryear">15</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031633" format="ixt-sec:duryear">3</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031634" format="ixt-sec:duryear">10</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031635" format="ixt-sec:duryear">3</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031636" format="ixt-sec:duryear">6</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031637" format="ixt-sec:duryear">3</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031638" format="ixt-sec:duryear">15</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031639" format="ixt-sec:duryear">2</ix:nonNumeric></td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#x2013;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c56031640" format="ixt-sec:duryear">20</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total depreciation expense was $<ix:nonFraction id="c56031495" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Depreciation" scale="3">32,265</ix:nonFraction>, $<ix:nonFraction id="c56031496" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Depreciation" scale="3">25,296</ix:nonFraction>, and $<ix:nonFraction id="c56031497" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Depreciation" scale="3">23,127</ix:nonFraction> for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy" id="c56114345" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Goodwill and Other Indefinite-Lived Intangible Assets</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Goodwill represents the excess of the purchase price over fair value of identifiable net assets acquired from business acquisitions. Goodwill is <em style="font-weight: inherit; font-style: normal;">not</em> amortized, but is reviewed for impairment on an annual basis and between annual tests if indicators of impairment are present. The Company evaluates goodwill for impairment annually as of <em style="font-weight: inherit; font-style: normal;"> October 31 </em>or more frequently when an event occurs or circumstances change that indicates the carrying value <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable. The Company has the option to assess goodwill for impairment by performing either a qualitative assessment or quantitative test. The qualitative assessment determines whether it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount. If the Company determines that it is <em style="font-weight: inherit; font-style: normal;">not</em> more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount, then the quantitative test is <em style="font-weight: inherit; font-style: normal;">not</em> required to be performed. If the Company determines that it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount, the Company is required to perform the quantitative test. In the quantitative test, the calculated fair value of the reporting unit is compared to its book value including goodwill. If the fair value of the reporting unit is in excess of its book value, the related goodwill is <em style="font-weight: inherit; font-style: normal;">not</em> impaired. If the fair value of the reporting unit is less than its book value, an impairment loss is recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other indefinite-lived intangible assets consist of certain tradenames. The Company tests the carrying value of these tradenames annually as of <em style="font-weight: inherit; font-style: normal;"> October 31, </em>or more frequently when an event occurs or circumstances change that indicates the carrying value <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable, by comparing the assets&#x2019; fair value to its carrying value. Fair value is measured using a relief-from-royalty approach, which assumes the fair value of the tradename is the discounted cash flows of the amount that would be paid had the Company <em style="font-weight: inherit; font-style: normal;">not</em> owned the tradename and instead licensed the tradename from another company.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company performed the required annual impairment tests for goodwill and other indefinite-lived intangible assets for the fiscal years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> and found <span style="-sec-ix-hidden:c56031520"><span style="-sec-ix-hidden:c56031521"><span style="-sec-ix-hidden:c56031519">no</span> </span></span>impairment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="c56114346" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Impairment of Long-Lived Assets</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company periodically evaluates the carrying value of long-lived assets (excluding goodwill and indefinite-lived tradenames). Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable. If the sum of the expected future undiscounted cash flows is less than the carrying amount of an asset, a loss is recognized for the difference between the fair value and carrying value of the asset.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">45</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:DebtPolicyTextBlock" id="c56114347" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Debt Issuance Costs</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Debt discounts and direct costs incurred in connection with the issuance of long-term debt are deferred and recorded as a reduction of outstanding debt and amortized to interest expense using the effective interest method over the terms of the related credit agreements. $<ix:nonFraction id="c56031525" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium" scale="3">4,712</ix:nonFraction>, $<ix:nonFraction id="c56031527" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium" scale="3">4,749</ix:nonFraction>, and $<ix:nonFraction id="c56031528" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium" scale="3">3,516</ix:nonFraction> of deferred financing costs and original issue discount were amortized to interest expense during fiscal years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Excluding the impact of any future long-term debt issuances or prepayments, estimated amortization to interest expense for the next <em style="font-weight: inherit; font-style: normal;">five</em> years is as follows: <em style="font-weight: inherit; font-style: normal;">2020</em> - <span style="-sec-ix-hidden:c56031536">$2,598;</span> <em style="font-weight: inherit; font-style: normal;">2021</em> - <span style="-sec-ix-hidden:c56031539">$2,640;</span> <em style="font-weight: inherit; font-style: normal;">2022</em> - <span style="-sec-ix-hidden:c56031541">$2,689;</span> <em style="font-weight: inherit; font-style: normal;">2023</em> - <span style="-sec-ix-hidden:c56031544">$2,579;</span> <em style="font-weight: inherit; font-style: normal;">2024</em> - $<ix:nonFraction id="c56031546" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DeferredCostsAmortizationExpenseYearFive" scale="3">2,508</ix:nonFraction>.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:IncomeTaxPolicyTextBlock" id="c56114348" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Income Taxes</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is a C Corporation and therefore accounts for income taxes pursuant to the liability method. Accordingly, the current or deferred tax consequences of a transaction are measured by applying the provision of enacted tax laws to determine the amount of taxes payable currently or in future years. Deferred income taxes are provided for temporary differences between the income tax bases of assets and liabilities and their carrying amounts for financial reporting purposes. In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that some portion or all of the deferred tax assets will <em style="font-weight: inherit; font-style: normal;">not</em> be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the years in which those temporary differences become deductible. The Company considers taxable income in prior carryback years, the scheduled reversal of deferred tax liabilities, projected future taxable income and tax planning strategies, as appropriate, in making this assessment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="c56114349" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Revenue Recognition</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><br /> The Company&#x2019;s revenues primarily consist of product sales to its customers. The Company considers the purchase orders, which in some cases are governed by master sales agreements, to be the contracts with the customers. For each contract, the Company considers the commitment to transfer products, each of which is distinct, to be the identified performance obligations. Revenue is measured as the amount of consideration the Company expects to be entitled in exchange for the transfer of product, which is generally the price stated in the contract specific for each item sold, adjusted for the value of expected returns, discounts, rebates, or other promotional incentives or allowances offered to our customers. Expected returns for damaged or defective product are estimated using the expected value method based upon historical product return experience. Discounts and rebates offered to customers are typically defined in the master sales agreements with customers and, therefore, are recorded using the most likely amount method based on the terms of the contract. Promotional incentives are defined programs offered for short, specific periods of time and are estimated using the expected value method based upon historical experience. The Company does <em style="font-weight: inherit; font-style: normal;">not</em> expect the transaction price for revenue recognized will be subject to a significant revenue reversal. As the Company&#x2019;s product sale contracts and standard payment terms have a duration of less than <em style="font-weight: inherit; font-style: normal;">one</em> year, it uses the practical expedient applicable to such contracts and does <em style="font-weight: inherit; font-style: normal;">not</em> consider the time value of money. Sales, use, value add and other similar taxes assessed by governmental authorities and collected concurrent with revenue-producing activities are excluded from revenue. The Company has elected to recognize the cost for freight activities when control of the product has transferred to the customer as an expense within cost of goods sold in the consolidated statements of comprehensive income. Product revenues are recognized at the point in time when control of the product is transferred to the customer, which typically occurs upon shipment or delivery to the customer. To determine when control has transferred, the Company considers if there is a present right to payment and if legal title, physical possession, and the significant risks and rewards of ownership of the asset has transferred to the customer. As substantially all of the Company&#x2019;s product revenues are recognized at a point in time, the amount of unsatisfied performance obligations at each period end is <em style="font-weight: inherit; font-style: normal;">not</em> material. The Company&#x2019;s contracts have an original expected duration of <em style="font-weight: inherit; font-style: normal;">one</em> year or less. As a result, the Company has elected to use the practical expedient to <em style="font-weight: inherit; font-style: normal;">not</em> disclose its remaining performance obligations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">At the request of certain customers, the Company will warehouse inventory billed to the customer but <em style="font-weight: inherit; font-style: normal;">not</em> delivered. Unless all revenue recognition criteria have been met, the Company does <em style="font-weight: inherit; font-style: normal;">not</em> recognize revenue on these transactions until the customer takes possession of the product.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">While the Company&#x2019;s standard payment terms are less than <em style="font-weight: inherit; font-style: normal;">one</em> year, the specific payment terms and conditions in its customer contracts vary. In some cases, customers prepay for their goods; in other cases, after appropriate credit evaluation, an open credit line is granted and payment is due in arrears. Contracts with payment in arrears are recognized in the consolidated balance sheets as accounts receivable upon revenue recognition, while contracts where customers pay in advance are recognized as customer deposits and recorded in other accrued liabilities in the consolidated balance sheets until revenue is recognized. The balance of customer deposits (contract liabilities) was $<ix:nonFraction id="c56031558" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ContractWithCustomerLiability" scale="3">9,952</ix:nonFraction> and $<ix:nonFraction id="c56031559" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ContractWithCustomerLiability" scale="3">14,174</ix:nonFraction> at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>respectively. During the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company recognized revenue of $<ix:nonFraction id="c56031560" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" scale="3">9,589</ix:nonFraction> related to amounts included in the <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>customer deposit balance. The Company typically recognizes revenue within <em style="font-weight: inherit; font-style: normal;">one</em> year of the receipt of the customer deposit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">46</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company offers standard warranty coverage on substantially all products that it sells and accounts for this standard warranty coverage as an assurance warranty. As such, <em style="font-weight: inherit; font-style: normal;">no</em> transaction price is allocated to the standard warranty, and the Company records a liability for product warranty obligations at the time of sale to a customer based upon historical warranty experience. Refer to Note <em style="font-weight: inherit; font-style: normal;">11,</em> &#x201c;Product Warranty Obligations,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s standard warranties.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company also sells extended warranty coverage for certain products, which it accounts for as service warranties. In most cases, the extended warranty is sold as a separate contract. As such, extended warranty sales are considered a separate performance obligation, and the extended warranty transaction is separate and distinct from the product. The extended warranty transaction price is initially recorded as deferred revenue in the consolidated balance sheets and amortized on a straight-line basis to net sales in the consolidated statements of comprehensive income over the life of the contracts following the standard warranty period. For extended warranty contracts that the Company sells under a <em style="font-weight: inherit; font-style: normal;">third</em>-party marketing agreement, it is required to pay fees to the <em style="font-weight: inherit; font-style: normal;">third</em>-party service provider and classifies these fees as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income consistent with how the related deferred revenue is recognized. Refer to Note <em style="font-weight: inherit; font-style: normal;">11,</em> &#x201c;Product Warranty Obligations,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s extended warranties.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition to extended warranties, the Company offers other services, including remote monitoring, installation and maintenance services in limited circumstances. Total service revenues account for less than <em style="font-weight: inherit; font-style: normal;">three</em> percent of revenue during the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note <em style="font-weight: inherit; font-style: normal;">7,</em> &#x201c;Segment Reporting,&#x201d; to the consolidated financial statements for the Company&#x2019;s disaggregated revenue disclosure. The information discussed above is applicable to each of the Company&#x2019;s product classes.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:AdvertisingCostsPolicyTextBlock" id="c56114350" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Advertising and Co-Op Advertising</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Expenditures for advertising, included in selling and service expenses in the consolidated statements of comprehensive income, are expensed as incurred. Expenditures for advertising production costs are expensed when the related advertisement is <em style="font-weight: inherit; font-style: normal;">first</em> run. Total expenditures for advertising were $<ix:nonFraction id="c56031571" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdvertisingExpense" scale="3">44,153</ix:nonFraction>, $<ix:nonFraction id="c56031572" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdvertisingExpense" scale="3">34,792</ix:nonFraction>, and $<ix:nonFraction id="c56031573" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AdvertisingExpense" scale="3">45,926</ix:nonFraction> for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ResearchAndDevelopmentExpensePolicy" id="c56114351" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Research and Development</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company expenses research and development costs as incurred. Total expenditures incurred for research and development were $<ix:nonFraction id="c56031576" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3">68,394</ix:nonFraction>, $<ix:nonFraction id="c56031577" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3">50,019</ix:nonFraction>, and $<ix:nonFraction id="c56031578" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3">42,869</ix:nonFraction> for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="c56114352" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Foreign Currency Translation and Transactions</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Balance sheet amounts for non-U.S. Dollar functional currency businesses are translated into U.S. Dollars at the rates of exchange in effect at the end of the fiscal year. Income and expenses incurred in a foreign currency are translated at the average rates of exchange in effect during the year. The related translation adjustments are made directly to accumulated other comprehensive loss, a component of stockholders&#x2019; equity, in the consolidated balance sheets. Gains and losses from foreign currency transactions are recognized as incurred in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="c56114353" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Fair Value of Financial Instruments</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10,</em> <i>Fair Value Measurement</i><i>,</i> defines fair value, establishes a consistent framework for measuring fair value, and expands disclosure for each major asset and liability category measured at fair value on either a recurring basis or nonrecurring basis. ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10</em> clarifies that fair value is an exit price, representing the amount that would be received in the sale of an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. As a basis for considering such assumptions, the pronouncement establishes a <em style="font-weight: inherit; font-style: normal;">three</em>-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value as follows: (Level <em style="font-weight: inherit; font-style: normal;">1</em>) observable inputs such as quoted prices in active markets; (Level <em style="font-weight: inherit; font-style: normal;">2</em>) inputs, other than the quoted prices in active markets, that are observable either directly or indirectly; and (Level <em style="font-weight: inherit; font-style: normal;">3</em>) unobservable inputs in which there is little or <em style="font-weight: inherit; font-style: normal;">no</em> market data, which require the reporting entity to develop its own assumptions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company believes the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and ABL facility borrowings), excluding Term Loan borrowings, approximates the fair value of these instruments based upon their short-term nature. The fair value of Term Loan borrowings, which have an aggregate carrying value of $<ix:nonFraction id="c56031590" contextRef="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebt" scale="3">812,953</ix:nonFraction>, was approximately $<ix:nonFraction id="c56031591" contextRef="i_2019-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtInstrumentFairValue" scale="3">833,092</ix:nonFraction> (Level <em style="font-weight: inherit; font-style: normal;">2</em>) at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>as calculated based on independent valuations whose inputs and significant value drivers are observable.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">47</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For the fair value of the assets and liabilities measured on a recurring basis, refer to the fair value table in Note <em style="font-weight: inherit; font-style: normal;">5,</em> &#x201c;Derivative Instruments and Hedging Activities,&#x201d; to the consolidated financial statements. The fair value of all derivative contracts is classified as Level <em style="font-weight: inherit; font-style: normal;">2.</em> The valuation techniques used to measure the fair value of derivative contracts, all of which have counterparties with high credit ratings, were based on quoted market prices or model driven valuations using significant inputs derived from or corroborated by observable market data. The fair value of derivative contracts considers the Company&#x2019;s credit risk in accordance with ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:UseOfEstimates" id="c56114354" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Use of Estimates</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:DerivativesPolicyTextBlock" id="c56114355" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Derivative Instruments and Hedging Activities</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company records all derivatives in accordance with ASC <em style="font-weight: inherit; font-style: normal;">815,</em> <i>Derivatives and Hedging</i><i>,</i> which requires derivative instruments be reported in the consolidated balance sheets at fair value and establishes criteria for designation and effectiveness of hedging relationships. The Company is exposed to market risk such as changes in commodity prices, foreign currencies and interest rates. The Company does <em style="font-weight: inherit; font-style: normal;">not</em> hold or issue derivative financial instruments for trading purposes. Refer to Item <em style="font-weight: inherit; font-style: normal;">7A</em> of this Annual Report on Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for further information on the Company&#x2019;s derivatives.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="c56114356" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>S</b><b>hare</b><b>-Based Compensation</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Share-based compensation expense, including stock options and restricted stock awards, is generally recognized on a straight-line basis over the vesting period based on the fair value of awards which are expected to vest. The fair value of all share-based awards is estimated on the date of grant. Refer to Note <em style="font-weight: inherit; font-style: normal;">17,</em> &#x201c;Share Plans,&#x201d; to the consolidated financial statements for further information on the Company&#x2019;s share-based compensation plans and accounting.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p></ix:nonNumeric><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b></b></p><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="c56114357" escape="true"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>New Accounting Pronouncements </b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>New Accounting Standards <em style="font-weight: inherit; font-style: normal;">Not</em> Yet Adopted</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2016, </em>the Financial Accounting Standards&#xa0;Board (FASB) issued Accounting Standards Update (ASU) <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">13,</em> <i>Financial Instruments &#x2013; Credit Losses (Topic <em style="font-weight: inherit; font-style: normal;">326</em>)</i>: <i>Measurement of Credit Losses on Financial Instruments</i>, which represents a new credit loss standard that will change the impairment model for most financial assets and certain other financial instruments. Specifically, this guidance will require entities to utilize a new &#x201c;expected loss&#x201d; model as it relates to trade and other receivables. In addition, entities will be required to recognize an allowance for estimated credit losses on available-for-sale debt securities, regardless of the length of time that a security has been in an unrealized loss position. This guidance will be effective for annual reporting periods beginning after <em style="font-weight: inherit; font-style: normal;"> December 15, 2019, </em>including interim periods within those annual reporting periods, and early adoption is permitted. The Company has established a project plan and an implementation team to adopt and apply the new standard. The Company is in the process of implementing necessary changes to accounting policies, processes, and controls to enable compliance with this new standard. The Company continues to evaluate the impact the adoption of this standard will have on its consolidated financial statements, and does <em style="font-weight: inherit; font-style: normal;">not</em> believe this new standard will have a material impact.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">There are several other new accounting pronouncements issued by the FASB. Each of these pronouncements, as applicable, has been or will be adopted by the Company. Management does <em style="font-weight: inherit; font-style: normal;">not</em> believe any of these accounting pronouncements has had or will have a material impact on the Company&#x2019;s consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Recently Adopted </i></b><b><i>Accounting Standards</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> <i>Leases</i><i> </i>(Topic <em style="font-weight: inherit; font-style: normal;">842</em>). This guidance was issued to increase transparency and comparability among organizations by requiring the recognition of lease assets and lease liabilities in the balance sheet and by disclosing key information about leasing arrangements. The Company adopted this standard using the modified retrospective approach as of the date of adoption, meaning <em style="font-weight: inherit; font-style: normal;">no</em> prior period balances were impacted by the adoption. Additionally, the Company elected to adopt the standard using the package of practical expedients permitted under the standard&#x2019;s transition guidance, which allowed the Company to carry forward its historical lease classifications, and embedded lease and initial direct cost assessments. The adoption of the standard had a material impact on the Company&#x2019;s consolidated balance sheet primarily related to the recognition of right-of-use (ROU) assets and lease liabilities for operating leases. However, the adoption did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the consolidated statement of comprehensive income and statement of cash flows. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#x201c;Leases,&#x201d; for further information regarding the Company&#x2019;s leases.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">48</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2018</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> <i>Reclassification of Certain Tax Effects from Accumulated Other Comprehensive Income</i>. This guidance was issued to address the impact of the change in the U.S. federal corporate income tax rate from the <em style="font-weight: inherit; font-style: normal;">2017</em> U.S. Tax Cuts and Jobs Act (the &#x201c;Tax Act&#x201d;) on items recorded as a component of accumulated other comprehensive income (AOCI). This guidance allows companies to reclassify to retained earnings the stranded tax effects lodged in AOCI as a result of the Tax Act. Upon adoption of the ASU, the Company elected to <em style="font-weight: inherit; font-style: normal;">not</em> reclassify the stranded income tax effects from AOCI to retained earnings.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2017</em>-<em style="font-weight: inherit; font-style: normal;">12,</em> <i>Derivatives</i><i> and Hedging &#x2013; Targeted Improvements to Accounting for Hedging Activities</i>. This guidance was issued to improve the financial reporting of hedging relationships to better portray the economic results of an entity&#x2019;s risk management activities in its financial statements and to make certain targeted improvements to simplify the application of the hedge accounting guidance. The adoption of this standard did <em style="font-weight: inherit; font-style: normal;">not</em> have an impact on the Company&#x2019;s hedging strategies, and did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the Company&#x2019;s results of operations and financial position.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> April 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2018</em>-<em style="font-weight: inherit; font-style: normal;">15,</em> <i>Intangibles &#x2013; Goodwill and Other &#x2013; Internal-Use Software: Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That is a Service Contract.</i> This guidance was issued to address the diversity in practice related to the accounting for costs of implementation activities performed in a cloud computing arrangement that is a service contract. The Company adopted this standard prospectively, impacting all implementation costs incurred after adoption. The adoption did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the Company&#x2019;s results of operations and financial position.</p></ix:nonNumeric><p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"></p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="c1434641" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">3.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Acquisitions</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisition of Pika</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#xa0;</i></b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> April 26, 2019, </em>the Company acquired Pika for a purchase price, net of cash acquired, of $<ix:nonFraction id="c56031642" contextRef="d_2019-04-26_2019-04-26_BusinessAcquisitionAxis-PikaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3">49,068</ix:nonFraction>. The acquisition purchase price was funded solely through cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company recorded a preliminary purchase price allocation during the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> which was trued-up in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> based upon its estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $<ix:nonFraction id="c56031647" contextRef="i_2019-04-26_BusinessAcquisitionAxis-PikaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" scale="3">58,196</ix:nonFraction> of intangible assets, including $<ix:nonFraction id="c56031648" contextRef="i_2019-04-26_BusinessAcquisitionAxis-PikaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">19,896</ix:nonFraction> of goodwill recorded in the Domestic segment, as of the acquisition date. The goodwill ascribed to the acquisition is <em style="font-weight: inherit; font-style: normal;">not</em> deductible for tax purposes. The accompanying consolidated financial statements include the results of Pika from the date of acquisition through <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The preliminary allocation of the purchase price is based on a preliminary valuation performed to determine the fair value of the net assets as of the acquisition date. The purchase price allocation is subject to further analysis and review, primarily around the review and final valuation of acquired intangible assets.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#xa0;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisition of Neurio</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> March 12, 2019, </em>the Company acquired Neurio for a purchase price of $<ix:nonFraction id="c56031650" contextRef="d_2019-03-12_2019-03-12_BusinessAcquisitionAxis-NeurioMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3">59,071</ix:nonFraction>, net of cash acquired and inclusive of a deferred payment of $<ix:nonFraction id="c56031651" contextRef="d_2019-07-01_2019-09-30_BusinessAcquisitionAxis-NeurioMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3">7,922</ix:nonFraction> which was made during the <em style="font-weight: inherit; font-style: normal;">third</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em> The acquisition purchase price was funded solely through cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company recorded a preliminary purchase price allocation in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> which was trued-up in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> based upon its estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $<ix:nonFraction id="c56031658" contextRef="i_2019-03-12_BusinessAcquisitionAxis-NeurioMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" scale="3">58,762</ix:nonFraction> of intangible assets, including $<ix:nonFraction id="c56031659" contextRef="i_2019-03-12_BusinessAcquisitionAxis-NeurioMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">17,862</ix:nonFraction> of goodwill recorded in the Domestic segment, as of the acquisition date. Substantially all of the goodwill and other intangible assets ascribed to this acquisition are&#xa0;deductible for tax purposes. The accompanying consolidated financial statements include the results of Neurio from the date of acquisition through <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The preliminary allocation of the purchase price is based on a preliminary valuation performed to determine the fair value of the net assets as of the acquisition date. The purchase price allocation is subject to further analysis and review, primarily around the review and final valuation of acquired intangible assets.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#xa0;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisition of Selmec</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> June 1, 2018, </em>the Company acquired Selmec for a purchase price of $<ix:nonFraction id="c56031660" contextRef="d_2018-06-01_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3">79,972</ix:nonFraction>, net of cash acquired and inclusive of earnout payments of $<ix:nonFraction id="c56031661" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" scale="3">14,902</ix:nonFraction>. Changes in the fair value of the earnout liability during <em style="font-weight: inherit; font-style: normal;">2019</em> of $(<ix:nonFraction id="c56031663" contextRef="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" sign="-" scale="3">977</ix:nonFraction>), which included interest accretion of $<ix:nonFraction id="c56031664" contextRef="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" scale="3">2,740</ix:nonFraction> and other fair value remeasurement adjustments of $(<ix:nonFraction id="c56031665" contextRef="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" sign="-" scale="3">3,717</ix:nonFraction>), were recognized as a component of operating income in the Company&#x2019;s consolidated statements of comprehensive income for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The acquisition purchase price was funded solely through cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">49</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company finalized the Selmec purchase price allocation during the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019</em> based upon its estimates of the fair value of the acquired assets and assumed liabilities. The final purchase price allocation as of the <em style="font-weight: inherit; font-style: normal;"> June 1, 2018 </em>opening balance sheet date was as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" id="c1434642" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>June 1, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accounts receivable</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031672" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" scale="3">14,302</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Inventories</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031673" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-6" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" scale="3">8,000</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Prepaid expense and other assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031674" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" scale="3">4,323</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Property and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031675" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" scale="3">5,572</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Intangible assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031676" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" scale="3">33,631</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031677" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">46,196</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031678" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" scale="3">3,252</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031679" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3">597</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total assets acquired</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031680" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" scale="3">115,873</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accounts payable</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031681" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" scale="3">7,216</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accrued wages and employee benefits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031682" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" scale="3">397</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031683" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" scale="3">13,671</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031684" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" scale="3">10,974</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031685" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3">3,643</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net assets acquired</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031686" contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" scale="3">79,972</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The goodwill ascribed to the acquisition is <em style="font-weight: inherit; font-style: normal;">not</em> deductible for tax purposes. The accompanying consolidated financial statements include the results of Selmec from the date of acquisition through <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Pro Forma Information</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following unaudited pro forma information of the Company gives effect to all acquisitions as though the transactions had occurred on <em style="font-weight: inherit; font-style: normal;"> January 1, 2017.&#xa0;</em>Refer to Note <em style="font-weight: inherit; font-style: normal;">1,</em> &#x201c;Description of Business,&#x201d; for further information on the acquisitions included in the table.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt 7.2pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" id="c1434643" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net Sales:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031688" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,204,336</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031689" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,023,464</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031690" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,679,373</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031691" contextRef="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,206,952</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031692" contextRef="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,067,737</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031693" contextRef="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,755,358</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031695" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">252,007</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031696" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">238,257</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031697" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">157,808</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031698" contextRef="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">248,335</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031699" contextRef="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">230,379</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031700" contextRef="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">151,764</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Net income attributable to Generac Holdings Inc. per common share - diluted</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031702" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">4.03</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031703" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">3.54</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031704" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">2.53</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031705" contextRef="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">3.97</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031706" contextRef="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">3.41</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031707" contextRef="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">2.44</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">This unaudited pro forma information is presented for informational purposes only and is <em style="font-weight: inherit; font-style: normal;">not</em> necessarily indicative of the results of operations that actually would have been achieved had the acquisitions been consummated on <em style="font-weight: inherit; font-style: normal;"> January 1, 2017.</em></p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:RedeemableNoncontrollingInterestTextBlock" id="c1434644" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">4.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Redeemable Noncontrolling Interest</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> March 1, 2016, </em>the Company acquired a <ix:nonFraction id="c56031709" contextRef="i_2016-03-01_BusinessAcquisitionAxis-PramacMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" scale="-2">65</ix:nonFraction>% ownership interest in PR Industrial S.r.l. and its subsidiaries (Pramac). The <ix:nonFraction id="c56031710" contextRef="i_2016-03-01_OwnershipAxis-PramacMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners" scale="-2">35</ix:nonFraction>% noncontrolling interest in Pramac had an acquisition date fair value of $<ix:nonFraction id="c56031711" contextRef="i_2016-03-01_BusinessAcquisitionAxis-PramacMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RedeemableNoncontrollingInterestEquityFairValue" scale="3">34,253</ix:nonFraction>, and was recorded as a redeemable noncontrolling interest in the consolidated balance sheet, as the noncontrolling interest holder had within its control the right to require the Company to redeem its interest in Pramac. In <em style="font-weight: inherit; font-style: normal;"> February 2019, </em>the Company amended its agreement with the noncontrolling interest holder of Pramac, extending the agreement by <span style="-sec-ix-hidden:c56031712">five</span> years, allowing the Company to exercise its call option rights in partial increments at certain times during the <em style="font-weight: inherit; font-style: normal;">five</em> year period, and providing that the noncontrolling interest holder <em style="font-weight: inherit; font-style: normal;">no</em> longer holds the right to put its shares to the Company until <em style="font-weight: inherit; font-style: normal;"> April 1, 2021.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">50</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> February 1, 2019, </em>the Company acquired a <ix:nonFraction id="c56031716" contextRef="i_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" scale="-2">51</ix:nonFraction>% ownership interest in Captiva Energy Solutions, Ltd (Captiva). The <ix:nonFraction id="c56031717" contextRef="i_2019-02-01_OwnershipAxis-CaptivaEnergySolutionsMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners" scale="-2">49</ix:nonFraction>% noncontrolling interest in Captiva has an acquisition date fair value of $<ix:nonFraction id="c56031718" contextRef="i_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RedeemableNoncontrollingInterestEquityFairValue" scale="3">3,165</ix:nonFraction>, and was recorded as a redeemable noncontrolling interest in the consolidated balance sheet, as the noncontrolling interest holder had within its control the right to require the Company to redeem its interest in Captiva. The noncontrolling interest holder has a put option to sell his interest to the Company any time after <span style="-sec-ix-hidden:c56031719">five</span> years from the date of acquisition, or earlier upon the occurrence of certain circumstances. The put option price is based on a multiple of earnings, subject to the terms of the acquisition. Further, the Company has a call option that it <em style="font-weight: inherit; font-style: normal;"> may </em>redeem any time after <span style="-sec-ix-hidden:c56031720">five</span> years from the date of acquisition, or earlier upon the occurrence of certain circumstances. The call option price is based on a multiple of earnings, subject to the terms of the acquisition.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For both transactions, the redeemable noncontrolling interest is recorded at the greater of the initial fair value, increased or decreased for the noncontrolling interests&#x2019; share of comprehensive income (loss), or the estimated redemption value, with any adjustments to the redemption value impacting retained earnings, but <em style="font-weight: inherit; font-style: normal;">not</em> net income. However, the redemption value adjustments are reflected in the earnings per share calculation, as detailed in Note <em style="font-weight: inherit; font-style: normal;">14,</em> &#x201c;Earnings Per Share,&#x201d; to the consolidated financial statements. The following table presents the changes in the redeemable noncontrolling interest:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:RedeemableNoncontrollingInterestTableTextBlock" id="c1434645" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 33%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31,</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2018</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2017</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031725" contextRef="i_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" scale="3">61,004</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031727" contextRef="i_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" scale="3">43,929</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031728" contextRef="i_2016-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" scale="3">33,138</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Noncontrolling interest</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031730" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TemporaryEquityAcquired" scale="3">3,165</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(1)</em></sup>&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031732" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:TemporaryEquityAcquired" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031733" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:TemporaryEquityAcquired" scale="3">1,540</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(2)</em></sup></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031735" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityNetIncome" scale="3">75</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031737" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityNetIncome" scale="3">2,214</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031738" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityNetIncome" scale="3">1,631</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031740" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments" sign="-" scale="3">1,764</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031742" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments" sign="-" scale="3">3,109</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031743" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments" scale="3">8,529</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Redemption value adjustment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031745" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" sign="-" scale="3">1,253</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031747" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">17,970</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031748" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" sign="-" scale="3">909</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031750" contextRef="i_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" scale="3">61,227</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031752" contextRef="i_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" scale="3">61,004</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031753" contextRef="i_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" scale="3">43,929</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="margin: 0pt;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
    <tbody>
     <tr>
      <td colspan="1" style="vertical-align:top;width:96.5%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">(<em style="font-weight: inherit; font-style: normal;">1</em>) Represents the noncontrolling interest of Captiva Energy calculated at the date of acquisition, <em style="font-weight: inherit; font-style: normal;"> February 1, 2019.</em></p> </td>
     </tr>
     <tr>
      <td colspan="1" style="vertical-align:top;width:96.5%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">(<em style="font-weight: inherit; font-style: normal;">2</em>) Represents the additional noncontrolling interest of Pramac resulting from a common control transaction between Generac Mobile Products S.r.l. and Pramac UK Limited legal entities.</p> </td>
     </tr>
    </tbody>
   </table>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" id="c1434646" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">5.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Derivative Instruments and Hedging Activities</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Commodities</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#xa0;</i></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is exposed to price fluctuations in commodities including steel, copper and aluminum; and periodically utilizes commodity derivatives to mitigate the impact of these potential price fluctuations on its financial results. These derivatives typically have maturities of less than <span style="-sec-ix-hidden:c56031756">eighteen</span> months. At <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> the Company had <span style="-sec-ix-hidden:c56031786"><span style="-sec-ix-hidden:c56031758">no</span> </span>commodity contracts outstanding.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Because these contracts do <em style="font-weight: inherit; font-style: normal;">not</em> qualify for hedge accounting, the related gains and losses are recorded in cost of goods sold in the Company&#x2019;s consolidated statements of comprehensive income. Net pre-tax gains (losses) recognized were $(<ix:nonFraction id="c56031760" contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeGainLossOnDerivativeNet" sign="-" scale="3">174</ix:nonFraction>), $(<ix:nonFraction id="c56031761" contextRef="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeGainLossOnDerivativeNet" sign="-" scale="3">874</ix:nonFraction>), and $<ix:nonFraction id="c56031762" contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeGainLossOnDerivativeNet" scale="3">377</ix:nonFraction> for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Foreign Currencies</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is exposed to foreign currency exchange risk as a result of transactions denominated in currencies other than the U.S. Dollar. The Company periodically utilizes foreign currency forward purchase and sales contracts to manage the volatility associated with certain foreign currency purchases and sales in the normal course of business. Contracts typically have maturities of <span style="-sec-ix-hidden:c56031765">twelve</span> months or less. As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> the Company had <span style="-sec-ix-hidden:c56031767">forty-three</span> and <span style="-sec-ix-hidden:c56031768">forty</span> foreign currency contracts outstanding, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Because these contracts do <em style="font-weight: inherit; font-style: normal;">not</em> qualify for hedge accounting, the related gains and losses are recorded in "other, net" in the Company&#x2019;s consolidated statements of comprehensive income. Net pre-tax gains (losses) recognized for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> were $(<ix:nonFraction id="c56031772" contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeGainLossOnDerivativeNet" sign="-" scale="3">1,195</ix:nonFraction>), $(<ix:nonFraction id="c56031773" contextRef="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeGainLossOnDerivativeNet" sign="-" scale="3">653</ix:nonFraction>), and $<ix:nonFraction id="c56031774" contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeGainLossOnDerivativeNet" scale="3">697</ix:nonFraction>, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">51</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Interest Rate Swaps</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;">2017,</em> the Company entered into <span style="-sec-ix-hidden:c56031777">twenty</span> interest rate swap agreements. In <em style="font-weight: inherit; font-style: normal;"> December 2019, </em>in conjunction with the amendment to its&#xa0;term loan, the Company amended those&#xa0;interest rate swaps to remove the LIBOR floor, which also resulted in minor reductions to the future dated swap fixed rates. The Company formally documented all relationships between interest rate hedging instruments and the related hedged items, as well as its risk-management objectives and strategies for undertaking these hedge transactions. These interest rate swap agreements qualify as cash flow hedges and therefore, the effective portions of the gains or losses are reported as a component of accumulated other comprehensive loss (AOCL) in the consolidated balance sheets. The amount of gains (losses) recognized for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> were $(<ix:nonFraction id="c56031780" contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" sign="-" scale="3">13,855</ix:nonFraction>), $<ix:nonFraction id="c56031781" contextRef="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" scale="3">2,924</ix:nonFraction>, and $<ix:nonFraction id="c56031782" contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" scale="3">3,712</ix:nonFraction>, respectively. The cash flows of the swaps are recognized as adjustments to interest expense each period.&#xa0;The ineffective portions of the derivatives&#x2019; changes in fair value, if any, are immediately recognized in earnings.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Fair Value</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table presents the fair value of the Company&#x2019;s derivatives:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" id="c1434647" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,<br /> 201</b><b>9</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,<br /> 201</b><b>8</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commodity contracts</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031789" contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeNet" scale="3">6</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031790" contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DerivativeFairValueOfDerivativeNet" sign="-" scale="3">160</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Foreign currency contracts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031791" contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeNet" scale="3">31</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031792" contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeNet" sign="-" scale="3">117</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Interest rate swaps</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031793" contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeNet" sign="-" scale="3">10,425</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031794" contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeNet" scale="3">8,307</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The fair value of the commodity and foreign currency contracts are included in prepaid expenses and other current assets, and the fair value of the interest rate swaps are included in other accrued liabilities and other long-term liabilities in the consolidated balance sheet as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The fair value of the commodity and foreign currency contracts are included in other accrued liabilities, and the fair value of the interest rate swaps are included in other assets in the consolidated balance sheet as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>Excluding the impact of credit risk, the fair value of the derivative contracts as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> is a liability of $<ix:nonFraction id="c56031784" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" sign="-" scale="3">10,588</ix:nonFraction> and an asset of $<ix:nonFraction id="c56031785" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" scale="3">8,220</ix:nonFraction>, respectively, which represents the amount the Company would pay or receive upon exit of the agreements on those dates.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ComprehensiveIncomeNoteTextBlock" id="c1434648" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">6.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Accumulated Other Comprehensive Loss</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following presents a tabular disclosure of changes in AOCL during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> net of tax:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" id="BD88507D-2A8C-4398-8EAB-643C2FEB2600" escape="true" continuedAt="c7707B662-A913-48FB-80E2-6258B93BFD18">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Foreign Currency Translation Adjustments</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Defined Benefit Pension Plan</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Unrealized Gain (Loss) on Cash Flow Hedges</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Total</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Beginning Balance &#x2013; January 1, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031818" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">18,832</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031819" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">10,541</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;" class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted"><ix:nonFraction id="c56031821" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">5,560</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031823" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">23,813</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss) before reclassifications</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031824" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" scale="3">2,210</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031825" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" scale="3">1,474</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: middle;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(1)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;" class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted">(<ix:nonFraction id="c56031827" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" sign="-" scale="3">13,855</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: middle;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(2)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031829" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" sign="-" scale="3">10,171</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031830" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031831" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">9,067</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(3)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);" class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted"><ix:nonFraction id="c56031833" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031835" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">9,067</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net current-period other comprehensive income (loss)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031836" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3">2,210</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031837" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3">10,541</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);" class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted">(<ix:nonFraction id="c56031839" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">13,855</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031841" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">1,104</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Ending Balance &#x2013; December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031842" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">16,622</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031843" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);" class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted">(<ix:nonFraction id="c56031845" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">8,295</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031847" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">24,917</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c7707B662-A913-48FB-80E2-6258B93BFD18">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Foreign Currency Translation Adjustments</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Defined Benefit Pension Plan</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Unrealized Gain (Loss) on Cash Flow Hedges</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Beginning Balance &#x2013; January 1, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031848" contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">12,856</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031849" contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">10,978</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031851" contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">2,636</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031853" contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">21,198</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss) before reclassifications</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031854" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" sign="-" scale="3">5,976</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031855" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" sign="-" scale="3">156</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(4)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031857" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" scale="3">2,924</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(5)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031859" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" sign="-" scale="3">3,208</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031860" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031861" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">593</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(6)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031863" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031865" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" sign="-" scale="3">593</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net current-period other comprehensive income (loss)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031866" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">5,976</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031867" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3">437</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031869" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3">2,924</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031871" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" sign="-" scale="3">2,615</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Ending Balance &#x2013; December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031872" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">18,832</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031873" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">10,541</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031875" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3">5,560</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56031877" contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" sign="-" scale="3">23,813</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrecognized actuarial gains of $<ix:nonFraction id="c56031798" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" scale="3">1,992</ix:nonFraction> net of tax effect of $(<ix:nonFraction id="c56031799" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax" sign="-" scale="3">518</ix:nonFraction>), included in the computation of net periodic pension cost for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>Refer to Note <em style="font-weight: inherit; font-style: normal;">16,</em> &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements for additional information.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrealized losses of $(<ix:nonFraction id="c56031802" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" sign="-" scale="3">18,732</ix:nonFraction>), net of tax effect of $<ix:nonFraction id="c56031803" contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax" scale="3">4,877</ix:nonFraction> for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="margin: 0pt;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">52</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">3</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Details of reclassifications from AOCL during <em style="font-weight: inherit; font-style: normal;">2019</em> are as follows:</p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:36pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" id="c1434651" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 27pt; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Amounts reclassified from AOCL</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031878" contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">10,920</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of net loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031879" contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" sign="-" scale="3">843</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total before tax</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031880" contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">11,763</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income tax impact</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031881" contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" sign="-" scale="3">2,696</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031882" contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" scale="3">9,067</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">4</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrecognized actuarial losses of $(<ix:nonFraction id="c56031808" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" sign="-" scale="3">211</ix:nonFraction>), net of tax benefit of $<ix:nonFraction id="c56031809" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax" scale="3">55</ix:nonFraction>, included in the computation of net periodic pension cost for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>Refer to Note <em style="font-weight: inherit; font-style: normal;">16,</em> &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements for additional information.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">5</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrealized gains of $<ix:nonFraction id="c56031812" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" scale="3">3,951</ix:nonFraction>, net of tax effect of $(<ix:nonFraction id="c56031813" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax" sign="-" scale="3">1,027</ix:nonFraction>) for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">6</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents actuarial losses of $<ix:nonFraction id="c56031815" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" scale="3">802</ix:nonFraction>, net of tax effect of $(<ix:nonFraction id="c56031816" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ReclassificationFromAociCurrentPeriodTax" sign="-" scale="3">209</ix:nonFraction>), amortized to net periodic pension cost for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>Refer to Note <em style="font-weight: inherit; font-style: normal;">16,</em> &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements for additional information.</p> </td>
     </tr>
    </tbody>
   </table>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:SegmentReportingDisclosureTextBlock" id="c1434652" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">7.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Segment Reporting</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company has <span style="-sec-ix-hidden:c56031884">two</span> reportable segments for financial reporting purposes &#x2013; Domestic and International. The Domestic segment includes the legacy Generac business, (excluding its traditional Latin American export operations), and the acquisitions that are based in the U.S. and Canada, all of which have revenues that are substantially derived from the U.S. and Canada. The International segment includes the legacy Generac business's Latin American export operations,&#xa0;and the Ottomotores, Tower Light, Pramac, Motortech and Selmec acquisitions, all of which have revenues that are substantially derived from outside the U.S and Canada. Both reportable segments design and manufacture a wide range of power generation equipment, energy technology solutions, and other power products. The Company has multiple operating segments, which it aggregates into the <em style="font-weight: inherit; font-style: normal;">two</em> reportable segments, based on materially similar economic characteristics, products, production processes, classes of customers, distribution methods and regional considerations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company's product offerings consist primarily of power generation equipment, energy technology solutions, and other power products geared for varying end customer uses. Residential products and commercial &amp; industrial (C&amp;I) products are each a similar class of products based on similar power output and end customer. The breakout of net sales between residential, C&amp;I, and other products by reportable segment is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="A65383A0-81FE-4F16-82DB-F10635C7059D" escape="true" continuedAt="c097BFDD6-C9C4-4578-B4B1-52B1DE6B9890">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Net Sales by Segment</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31, 2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Domestic</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>International</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Total </b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031918" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,086,019</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031919" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">57,704</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031920" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,143,723</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031921" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">513,482</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031922" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">358,113</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031923" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">871,595</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031924" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">143,397</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031925" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">45,621</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031926" contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">189,018</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031927" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,742,898</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031928" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">461,438</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031929" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,204,336</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c097BFDD6-C9C4-4578-B4B1-52B1DE6B9890" continuedAt="c7EDCED12-30D0-434C-A144-94C9631416CB">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031930" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">980,707</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031931" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">62,032</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031932" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,042,739</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031933" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">461,415</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031934" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">358,855</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031935" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">820,270</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031936" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">124,398</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031937" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">36,057</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031938" contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">160,455</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031939" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,566,520</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031940" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">456,944</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031941" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,023,464</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c7EDCED12-30D0-434C-A144-94C9631416CB">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031942" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">796,237</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031943" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">74,253</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031944" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">870,490</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031945" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">372,635</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031946" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">311,718</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031947" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">684,353</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031948" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">102,806</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031949" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">21,724</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031950" contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">124,530</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031951" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,271,678</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031952" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">407,695</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031953" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,679,373</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">53</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Residential products consist primarily of automatic home standby generators ranging in output from <em style="font-weight: inherit; font-style: normal;">6kW</em> to <em style="font-weight: inherit; font-style: normal;">60kW,</em> portable generators, energy storage and monitoring solutions, and other outdoor power equipment. These products are sold through independent residential dealers, national and regional retailers, e-commerce merchants, electrical/HVAC/solar wholesalers, solar installers, and outdoor power equipment dealers. The residential products revenue consists of the sale of the product to our distribution partners, which in turn sell or rent the product to the end consumer, including installation and maintenance services. In some cases, residential products are sold direct to the end consumer. Substantially all of the residential products revenues are transferred to the customer at a point in time.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">C&amp;I products consist of larger output stationary generators used in C&amp;I applications and fueled by diesel, natural gas, liquid propane and bi-fuel, with power outputs ranging from <em style="font-weight: inherit; font-style: normal;">10kW</em> up to <em style="font-weight: inherit; font-style: normal;">3,250kW.</em> Also included in C&amp;I products are mobile generators, light towers, mobile heaters and mobile pumps. These products are sold through industrial distributors and dealers, equipment rental companies and equipment distributors. The C&amp;I products revenue consists of the sale of the product to our distribution partners, which in turn sell or rent the product to the end customer, including installation and maintenance services. In some cases, C&amp;I products are sold direct to the end customer. Substantially all of the C&amp;I products revenues are transferred to the customer at a point in time.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other products consist primarily of aftermarket service parts and product accessories sold to our dealers,&#xa0;the amortization of extended warranty deferred revenue, and remote monitoring subscription revenue. The aftermarket service parts and product accessories are generally transferred to the customer at a point in time, while the extended warranty and subscription revenue are&#xa0;recognized over the life of the contract.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Management evaluates the performance of its segments based primarily on Adjusted EBITDA, which is reconciled to Income before provision for income taxes below. The computation of Adjusted EBITDA is based on the definition that is contained in the Company&#x2019;s credit agreements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="A1CA03B4-EC0B-4ED5-B8E7-C938BC48E000" escape="true" continuedAt="B6EA8F09-E074-4738-8FA5-B29B99A6C8A3">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Adjusted EBITDA</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031954" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">428,667</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031955" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">388,495</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031956" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:AdjustedEBITDA" scale="3">282,450</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031957" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">25,448</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031958" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">36,057</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031959" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:AdjustedEBITDA" scale="3">34,850</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total adjusted EBITDA</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031960" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">454,115</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031961" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">424,552</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031962" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="gnrc:AdjustedEBITDA" scale="3">317,300</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest expense</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031963" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestExpense" scale="3">41,544</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031964" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestExpense" scale="3">40,956</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031965" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InterestExpense" scale="3">42,667</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Depreciation and amortization</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031966" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3">60,767</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031967" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3">47,408</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031968" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3">51,988</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash write-down and other adjustments (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031969" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:NoncashWritedownAndOtherAdjustments" scale="3">240</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031970" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NoncashWritedownAndOtherAdjustments" scale="3">3,532</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031971" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NoncashWritedownAndOtherAdjustments" scale="3">2,923</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash share-based compensation expense (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031972" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3">16,694</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031973" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3">14,563</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031974" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3">10,205</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on extinguishment of debt (3)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031975" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">926</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031976" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">1,332</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031977" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement (4)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031978" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">10,920</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031979" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031980" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Transaction costs and credit facility fees (5)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031981" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TransactionCostsAndCredityFaciltyFees" scale="3">2,724</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031982" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TransactionCostsAndCredityFaciltyFees" scale="3">3,883</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031983" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TransactionCostsAndCredityFaciltyFees" scale="3">2,145</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Business optimization expenses (6)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031984" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessOptimizationExpense" scale="3">1,572</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031985" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessOptimizationExpense" scale="3">952</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56031986" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:BusinessOptimizationExpense" scale="3">2,912</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031987" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:Other" sign="-" scale="3">879</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031988" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:Other" scale="3">850</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56031989" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:Other" scale="3">761</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031990" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">319,607</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031991" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">311,076</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56031992" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3">203,699</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Includes certain foreign currency and purchase accounting related adjustments, gains/losses on disposal of assets and unrealized mark-to-market adjustments on commodity contracts.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">3</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">4</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents pre-tax settlement charges related to the termination of the Company&#x2019;s domestic pension plan in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">5</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity issuance, debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">6</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents severance and other non-recurring restructuring charges related to the consolidation of certain of our facilities.</p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">54</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> management has determined that the Latin American export operations of the legacy Generac business (GPS LATAM) should have been included in the International reportable segment beginning in <em style="font-weight: inherit; font-style: normal;">2018.</em> Previously, GPS LATAM was reported in the Domestic segment, in amounts that were <em style="font-weight: inherit; font-style: normal;">not</em> material. This change is to reflect the current leadership structure as well as how the Company makes financial decisions and allocates resources for the overall Latin America reporting unit. To reflect this change, management has chosen to correct the net sales and adjusted EBITDA by segment included in this Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017.</em> The following table details the amounts adjusted from the Domestic segment to the International segment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" id="c1434657" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2019</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2018</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2017</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 43%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential Products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031993" contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">7,129</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031994" contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">9,924</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031995" contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">18,888</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);" class="GFJY4-DCU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031996" contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">5,724</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031997" contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">2,651</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56031998" contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">12,940</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56031999" contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">998</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032000" contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">1,230</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032001" contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total Net Sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032002" contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">13,851</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032003" contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">13,805</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032004" contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">31,828</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032005" contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AdjustedEBITDA" scale="3">984</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032006" contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:AdjustedEBITDA" scale="3">190</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032007" contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:AdjustedEBITDA" scale="3">7,840</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">There was <em style="font-weight: inherit; font-style: normal;">no</em> impact to the Company&#x2019;s reporting of total assets, depreciation and amortization, and capital expenditures by segment as a result of this&#xa0;change.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The following tables summarize additional financial information by reportable segment:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:continuation id="B6EA8F09-E074-4738-8FA5-B29B99A6C8A3" continuedAt="c6A68C3D3-A33A-4F13-BD74-5BE067276BFC">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Assets</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032008" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">2,123,251</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032009" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">1,868,554</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032010" contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">1,612,607</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032011" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">542,418</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032012" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:Assets" scale="3">557,760</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032013" contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">413,358</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032014" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">2,665,669</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032015" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">2,426,314</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032016" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Assets" scale="3">2,025,965</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c6A68C3D3-A33A-4F13-BD74-5BE067276BFC" continuedAt="c692E438A-F5F0-4E68-903A-6C0760E3A73D">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Depreciation and Amortization</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032017" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">46,145</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032018" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">35,586</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032019" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">37,962</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032020" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">14,764</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032021" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">11,822</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032022" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">14,026</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032023" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">60,909</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032024" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">47,408</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032025" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" scale="3">51,988</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c692E438A-F5F0-4E68-903A-6C0760E3A73D">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Capital Expenditures</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032026" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">36,007</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032027" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">38,242</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032028" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">29,258</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032029" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">24,795</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032030" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">9,359</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032031" contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">4,003</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032032" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">60,802</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032033" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">47,601</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032034" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3">33,261</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s sales in the United States represent approximately <ix:nonFraction id="c56031908" contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">75</ix:nonFraction>%, <ix:nonFraction id="c56031909" contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">74</ix:nonFraction>%, and <ix:nonFraction id="c56031910" contextRef="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">74</ix:nonFraction>% of total sales for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Approximately <ix:nonFraction id="c56031913" contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:ConcentrationRiskPercentage1" scale="-2">80</ix:nonFraction>% of the Company&#x2019;s identifiable long-lived assets are located in the United States as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:SupplementalBalanceSheetDisclosuresTextBlock" id="c1434661" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">8.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Balance Sheet Details</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Inventories consist of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="c1434662" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Raw material</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032044" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="3">328,021</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032045" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="3">348,980</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Work-in-process</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032046" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="3">10,387</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032047" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="3">6,971</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032048" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="3">183,616</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032049" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="3">188,799</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032050" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:InventoryNet" scale="3">522,024</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032051" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:InventoryNet" scale="3">544,750</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">55</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> inventories totaling $<ix:nonFraction id="c56032038" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" scale="3">18,684</ix:nonFraction> and $<ix:nonFraction id="c56032039" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" scale="3">8,488</ix:nonFraction>, respectively, were on consignment at customer locations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Property and equipment consists of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="c1434663" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Land and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032052" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">18,252</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032053" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">15,975</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032054" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">177,079</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032055" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">163,161</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032056" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">117,114</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032057" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">103,726</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032058" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">22,040</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032059" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">28,198</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032060" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">3,955</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032061" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">2,070</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032062" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">99,124</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032063" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">82,638</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032064" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">4,293</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032065" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">2,137</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Construction in progress</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032066" contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">36,299</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032067" contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">26,543</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gross property and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032068" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">478,156</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032069" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3">424,448</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accumulated depreciation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032070" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3">161,180</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032071" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3">145,519</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032072" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3">316,976</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032073" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3">278,929</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total property and equipment included finance leases of $<ix:nonFraction id="c56032040" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CapitalLeasesBalanceSheetAssetsByMajorClassNet" scale="3">20,158</ix:nonFraction> at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>primarily made up of buildings and improvements. Amortization of finance lease right of use assets&#xa0;is recorded within depreciation expense in the consolidated statements of comprehensive income. The initial measurement of new finance lease right of use assets&#xa0;is accounted for as a non-cash item in the consolidated statement of cash flows. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#x201c;Leases,&#x201d; for further information regarding the Company&#x2019;s accounting for leases under ASC <em style="font-weight: inherit; font-style: normal;">842,</em> <i>Leases,</i> in <em style="font-weight: inherit; font-style: normal;">2019.</em></p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:18pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="c1434664" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">9.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Goodwill and Intangible Assets</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The changes in the carrying amount of goodwill by reportable segment for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfGoodwillTextBlock" id="c4F0D860B-18E3-4993-82A3-D8907630BF54" escape="true" continuedAt="c8F26FF9B-AF45-4849-80FC-2A5DD2B079DB">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032097" contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">621,451</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032098" contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">100,072</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032099" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">721,523</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Acquisitions of businesses, net</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032106" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032107" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3">46,788</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032108" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3">46,788</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032115" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032116" contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" sign="-" scale="3">3,656</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032117" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" sign="-" scale="3">3,656</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032124" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">621,451</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032125" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">143,204</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032126" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">764,655</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Acquisitions of businesses, net</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032133" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3">37,758</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032134" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3">3,078</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032135" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3">40,836</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032142" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032143" contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" sign="-" scale="3">207</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032144" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" sign="-" scale="3">207</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032151" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">659,209</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032152" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">146,075</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032153" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">805,284</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note <em style="font-weight: inherit; font-style: normal;">3,</em> &#x201c;Acquisitions,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s acquisitions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The details of the gross goodwill applicable to each reportable segment at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:continuation id="c8F26FF9B-AF45-4849-80FC-2A5DD2B079DB">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Impairment</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Impairment</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032163" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillGross" scale="3">1,162,402</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032164" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="3">503,193</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032165" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">659,209</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032166" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillGross" scale="3">1,124,644</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032167" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="3">503,193</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032168" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">621,451</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032172" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillGross" scale="3">150,686</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032173" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="3">4,611</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032174" contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">146,075</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032175" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillGross" scale="3">147,815</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032176" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="3">4,611</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032177" contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">143,204</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032181" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillGross" scale="3">1,313,088</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032182" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="3">507,804</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032183" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">805,284</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032184" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillGross" scale="3">1,272,459</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032185" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" scale="3">507,804</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032186" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:Goodwill" scale="3">764,655</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">56</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table summarizes intangible assets by major category as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018:</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ScheduleOfIntangibleAssetsTableTextBlock" id="c1434667" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Weighted Average</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Amortization Years</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Amortization</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net Book Value</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Amortization</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net Book Value</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 30%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finite-lived intangible assets:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Tradenames</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c56032188" format="ixt-sec:duryear">9</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032189" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">56,669</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032190" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">36,613</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032191" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">20,056</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032192" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">56,378</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032193" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">32,416</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032194" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">23,962</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Customer lists</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c56032195" format="ixt-sec:duryear">12</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032196" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">369,932</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032197" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">314,380</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032198" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">55,552</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032199" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">368,343</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032200" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">307,149</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032201" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">61,194</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Patents</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c56032202" format="ixt-sec:duryear">13</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032203" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">131,086</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032204" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">110,554</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032205" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">20,532</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032206" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">131,030</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032207" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">101,060</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032208" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">29,970</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Developed technology</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c56032209" format="ixt-sec:duryear">9</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032210" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">82,886</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032211" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">17,872</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032212" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">65,014</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032213" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">13,169</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032214" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">12,058</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032215" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">1,111</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Software</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032217" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">1,046</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032218" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">1,046</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032219" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032220" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">1,046</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032221" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">1,046</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032222" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Non-compete/other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c56032223" format="ixt-sec:duryear">4</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032224" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">12,063</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032225" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">3,804</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032226" contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">8,259</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032227" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">3,829</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032228" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">1,897</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032229" contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">1,932</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total finite-lived intangible assets</p> </td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032231" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">653,682</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032232" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">484,269</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032233" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">169,413</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032234" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3">573,795</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032235" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">455,626</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032236" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3">118,169</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Indefinite-lived tradenames</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032238" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IndefiniteLivedTradeNames" scale="3">128,321</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032240" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IndefiniteLivedTradeNames" scale="3">128,321</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032241" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IndefiniteLivedTradeNames" scale="3">128,321</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032243" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IndefiniteLivedTradeNames" scale="3">128,321</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total intangible assets</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032245" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" scale="3">782,003</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032246" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">484,269</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032247" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3">297,734</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032248" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" scale="3">702,116</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032249" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3">455,626</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032250" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3">246,490</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Amortization of intangible assets was $<ix:nonFraction id="c56032080" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">28,644</ix:nonFraction>, $<ix:nonFraction id="c56032081" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">22,112</ix:nonFraction> and $<ix:nonFraction id="c56032082" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3">28,861</ix:nonFraction> in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Excluding the impact of any future acquisitions, the Company estimates amortization expense for the next <em style="font-weight: inherit; font-style: normal;">five</em> years will be as follows: <em style="font-weight: inherit; font-style: normal;">2020</em> -&#xa0;<span style="-sec-ix-hidden:c56032088">$31,237;</span> <em style="font-weight: inherit; font-style: normal;">2021</em> - <span style="-sec-ix-hidden:c56032090">$29,473;</span> <em style="font-weight: inherit; font-style: normal;">2022</em> - <span style="-sec-ix-hidden:c56032092">$22,226;</span> <em style="font-weight: inherit; font-style: normal;">2023</em> - <span style="-sec-ix-hidden:c56032094">$18,344;</span> <em style="font-weight: inherit; font-style: normal;">2024</em> - $<ix:nonFraction id="c56032096" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" scale="3">16,156</ix:nonFraction>.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:LeasesOfLesseeDisclosureTextBlock" id="c1434668" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">10.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Leases</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company determines if an arrangement is or contains a lease at contract inception. The Company recognizes a right of use (&#x201c;ROU&#x201d;) asset and lease liability at the lease commencement date based on the present value of the lease payments over the lease term. As the Company&#x2019;s leases generally do <em style="font-weight: inherit; font-style: normal;">not</em> provide an implicit rate, the incremental borrowing rate is used to determine the present value of lease payments. The incremental borrowing rate is a collateralized rate determined based on the lease term, the Company&#x2019;s credit rating, and other market information available at the commencement date. The ROU asset also includes any lease payments made prior to the commencement date and is reduced by any lease incentives. The lease term <em style="font-weight: inherit; font-style: normal;"> may </em>include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for operating leases is recognized on a straight-line basis over the lease term, while lease expense for finance leases is recognized as depreciation and interest expense using the effective interest method. The Company&#x2019;s variable lease expense generally consists of property tax and insurance payments that are variable in nature, however, these amounts are immaterial to the consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company has lease agreements with both lease and nonlease components, which it elected to account for as a single lease component. However, the Company did <em style="font-weight: inherit; font-style: normal;">not</em> elect to apply the recognition exception for short-term leases. The Company is applying these elections to all asset classes.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company leases certain manufacturing facilities, distribution centers, office space, warehouses, automobiles, machinery and computer equipment globally under both finance and operating leases. The Company&#x2019;s leases have remaining lease terms of up to <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_RangeAxis-MaximumMember" name="gnrc:LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" id="c56032254" format="ixt-sec:duryear">20</ix:nonNumeric> years, of which certain leases, primarily within the buildings and improvements asset class, include options to extend the leases for up to <ix:nonNumeric contextRef="i_2019-12-31_RangeAxis-MaximumMember" name="us-gaap:LesseeOperatingLeaseRenewalTerm" id="c56032255" format="ixt-sec:duryear">10</ix:nonNumeric> additional years. Further, the Company leases certain buildings from a noncontrolling interest holder, which the Company has determined to be arms&#x2019; length transactions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company is a lessor of <em style="font-weight: inherit; font-style: normal;">one</em> building that it leases to a <em style="font-weight: inherit; font-style: normal;">third</em> party. The lease income related to this arrangement is <em style="font-weight: inherit; font-style: normal;">not</em> material to the consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company records its operating lease cost and amortization of finance lease ROU assets within cost of goods sold or operating expenses in the consolidated statements of comprehensive income depending on the cost center of the underlying asset. The Company records its finance lease interest cost within interest expense in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">57</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The components of total lease cost consist of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:LeaseCostTableTextBlock" id="c1434669" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Twelve Months Ended December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating lease cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032276" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3">9,647</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease cost:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of ROU assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032278" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3">2,531</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Interest on lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032279" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3">2,227</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total lease cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032280" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LeaseCost" scale="3">14,405</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Prior to the adoption of ASC <em style="font-weight: inherit; font-style: normal;">842,</em> lease expense consisted of payments on operating leases. Total rent expense related to operating leases for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>and <em style="font-weight: inherit; font-style: normal;">2017</em> was approximately $<ix:nonFraction id="c56032262" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeasesRentExpenseNet" scale="3">10,739</ix:nonFraction> and $<ix:nonFraction id="c56032263" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeasesRentExpenseNet" scale="3">10,845</ix:nonFraction>, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">As of <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the date of the adoption of ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> the Company recognized ROU assets and lease liabilities related to operating leases of $<ix:nonFraction id="c56032266" contextRef="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3">42,024</ix:nonFraction> and $<ix:nonFraction id="c56032267" contextRef="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3">42,056</ix:nonFraction>, respectively, and there was <ix:nonFraction id="c56032268" contextRef="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member" unitRef="USD" format="ixt-sec:numwordsen" decimals="-3" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" scale="3">no</ix:nonFraction> cumulative effect adjustment made to retained earnings. Supplemental balance sheet information related to the Company&#x2019;s leases is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" id="c1434670" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating Leases</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease ROU assets (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032282" contextRef="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3">35,950</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities - current (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032283" contextRef="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3">7,231</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities - noncurrent (3)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032284" contextRef="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherLongtermLiabilitiesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3">29,778</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total operating lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032285" contextRef="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3">37,009</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance Leases</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease ROU assets, gross</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032287" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:FinanceLeaseRightOfUseAssetGross" scale="3">29,142</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accumulated depreciation - finance lease ROU assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032288" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:FinanceLeaseRightOfUseAssetAccumulatedDepreciation" scale="3">3,079</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Finance lease ROU assets, net (4)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032289" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" scale="3">26,063</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease liabilities - current (5)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032290" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="3">1,830</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease liabilities - noncurrent (6)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032291" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" scale="3">24,132</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total finance lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032292" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3">25,962</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the operating lease and other assets line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the other accrued liabilities line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">3</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the operating lease and other long-term liabilities line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">4</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the property and equipment, net line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">5</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the current portion of long-term borrowings and finance lease obligations line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">6</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the long-term borrowings and finance lease obligations line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Supplemental cash flow information related to the Company&#x2019;s leases is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ScheduleOfLeasesCashFlowInformationTableTextBlock" id="c1434671" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Three Months Ended December 31, 2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b>Twelve Months Ended December 31, 2019</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash paid for amounts included in the measurement of lease liabilities</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating cash flows from operating leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032294" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3">2,174</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032295" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3">10,125</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating cash flows from finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032296" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseInterestPaymentOnLiability" scale="3">471</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032297" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseInterestPaymentOnLiability" scale="3">1,864</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financing cash flows from finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032298" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3">976</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032299" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3">3,237</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ROU assets obtained in exchange for lease liabilities</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032301" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3">239</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032302" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3">4,021</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032303" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" scale="3">632</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032304" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" scale="3">8,797</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">58</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Weighted average remaining lease term and discount rate information related to the Company&#x2019;s leases is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:LeaseTermAndDiscountRateTableTextBlock" id="c1434672" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average remaining lease term (in years)</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="i_2019-12-31" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="c56032306" format="ixt-sec:duryear">6.90</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="i_2019-12-31" name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1" id="c56032307" format="ixt-sec:duryear">13.87</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average discount rate</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032309" contextRef="i_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2">4.59</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032310" contextRef="i_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" scale="-2">7.83</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The maturities of the Company&#x2019;s lease liabilities are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" id="c1434673" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>As of December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Finance Leases</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Operating Leases</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032311" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" scale="3">3,769</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032312" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="3">9,086</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032313" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" scale="3">3,352</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032314" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="3">7,029</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032315" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" scale="3">3,536</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032316" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="3">5,472</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032317" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" scale="3">2,659</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032318" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="3">4,629</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2024</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032319" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive" scale="3">2,650</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032320" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" scale="3">4,288</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2024</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032321" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive" scale="3">29,371</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032322" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" scale="3">14,232</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total minimum lease payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032323" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDue" scale="3">45,337</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032324" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="3">44,736</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest component</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032325" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" scale="3">19,375</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032326" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3">7,727</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Present value of minimum lease payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032327" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3">25,962</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032328" contextRef="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3">37,009</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><ix:exclude>&#xa0;</ix:exclude></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ProductWarrantyDisclosureTextBlock" id="c1434674" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">1<span style="-sec-ix-hidden:c56032330"><span style="-sec-ix-hidden:c56032331"><span style="-sec-ix-hidden:c56032332"><span style="-sec-ix-hidden:c56032333"><span style="-sec-ix-hidden:c56032334">1</span></span></span></span></span>.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Product Warranty Obligations</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company records a liability for standard product warranty obligations accounted for as assurance warranties at the time of sale to a customer based upon historical warranty experience. The Company also records a liability for specific warranty matters when they become known and are reasonably estimable. The following is a tabular reconciliation of the Company&#x2019;s standard product warranty liability accounted for as an assurance warranty:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="c49034D6B-8EDB-4E4C-9F7E-0586287584B0" escape="true" continuedAt="F597C0DD-BA73-4202-936C-A63CA47F4384">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032357" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">41,785</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032358" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">35,422</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032359" contextRef="i_2016-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">31,695</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Product warranty reserve assumed in acquisition</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032360" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" scale="3">1,062</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032361" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032362" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" scale="3">43</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032363" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3">26,096</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032364" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3">20,029</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032365" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3">18,861</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for warranty issued</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032366" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3">32,060</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032367" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3">26,910</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032368" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3">21,347</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Changes in estimates for pre-existing warranties</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032369" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3">505</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032370" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" sign="-" scale="3">518</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032371" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3">1,198</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032372" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">49,316</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032373" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">41,785</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032374" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">35,422</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Additionally, the Company sells extended warranty coverage for certain products, which it accounts for as a service warranty. The sales of extended warranties are recorded as deferred revenue, and typically have a duration of <span style="-sec-ix-hidden:c56032335">five</span> to <span style="-sec-ix-hidden:c56032336">ten</span> years. The deferred revenue related to extended warranty coverage is amortized over the duration of the extended warranty contract period, following the standard warranty period, using the straight-line method. The Company believes the straight-line method is appropriate because the performance obligation is satisfied based on the passage of time. The amortization of deferred revenue is recorded to net sales in the consolidated statements of comprehensive income. The following is a tabular reconciliation of the deferred revenue related to extended warranty coverage:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:continuation id="F597C0DD-BA73-4202-936C-A63CA47F4384">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032375" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">68,340</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032376" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">57,854</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032377" contextRef="i_2016-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">36,139</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred revenue contracts issued</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032378" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued" scale="3">24,483</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032379" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued" scale="3">21,440</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032380" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued" scale="3">29,262</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of deferred revenue contracts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032381" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" scale="3">14,085</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032382" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" scale="3">10,954</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032383" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" scale="3">7,547</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032384" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">78,738</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032385" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">68,340</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032386" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">57,854</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">59</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The timing of recognition of the Company&#x2019;s deferred revenue balance related to extended warranties at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" id="c1434677" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032387" contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueRemainingPerformanceObligation" scale="3">15,535</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032388" contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2021-01-01" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueRemainingPerformanceObligation" scale="3">16,798</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032389" contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-01-01" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueRemainingPerformanceObligation" scale="3">14,705</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032390" contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2023-01-01" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueRemainingPerformanceObligation" scale="3">11,367</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032391" contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2024-01-01" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueRemainingPerformanceObligation" scale="3">20,333</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032392" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueRemainingPerformanceObligation" scale="3">78,738</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;">2017,</em> the Company launched a post-sale extended warranty marketing program with a <em style="font-weight: inherit; font-style: normal;">third</em> party. In the program&#x2019;s agreement, the Company is required to pay fees to the <em style="font-weight: inherit; font-style: normal;">third</em>-party service provider based on the number of extended warranty contracts that they sell, which it classifies as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income over the same period that the underlying deferred revenue is recognized. The balance of deferred contract costs as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> was $<ix:nonFraction id="c56032342" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:CapitalizedContractCostNet" scale="3">6,190</ix:nonFraction> and $<ix:nonFraction id="c56032343" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CapitalizedContractCostNet" scale="3">4,782</ix:nonFraction>, respectively. Amortization of deferred contract costs recorded during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> was $<ix:nonFraction id="c56032346" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CapitalizedContractCostAmortization" scale="3">869</ix:nonFraction>, $<ix:nonFraction id="c56032347" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CapitalizedContractCostAmortization" scale="3">615</ix:nonFraction> and $<ix:nonFraction id="c56032348" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CapitalizedContractCostAmortization" scale="3">193</ix:nonFraction>, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Standard product warranty obligations and extended warranty related deferred revenues are included in the consolidated balance sheets as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" id="c1434678" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Product warranty liability</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion - other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032394" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualCurrent" scale="3">27,885</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032395" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualCurrent" scale="3">25,396</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Long-term portion - other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032396" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualNoncurrent" scale="3">21,431</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032397" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualNoncurrent" scale="3">16,389</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032398" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">49,316</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032399" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:StandardProductWarrantyAccrual" scale="3">41,785</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred revenue related to extended warranties</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion - other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032401" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrualCurrent" scale="3">15,519</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032402" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrualCurrent" scale="3">13,646</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Long-term portion - other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032403" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrualNoncurrent" scale="3">63,219</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032404" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrualNoncurrent" scale="3">54,694</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032405" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">78,738</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032406" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ExtendedProductWarrantyAccrual" scale="3">68,340</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><ix:exclude>&#xa0;</ix:exclude></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:DebtDisclosureTextBlock" id="c1434679" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">12.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Credit Agreements</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Short-term borrowings are included in the consolidated balance sheets as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfShortTermDebtTextBlock" id="c1434680" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ABL facility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032493" contextRef="i_2019-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">30,961</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032494" contextRef="i_2018-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">18,459</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other lines of credit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032495" contextRef="i_2019-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">27,753</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032496" contextRef="i_2018-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">27,124</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032497" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">58,714</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032498" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">45,583</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Long-term borrowings are included in the consolidated balance sheets as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock" id="c1434681" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Term loan</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032499" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="us-gaap:DebtInstrumentCarryingAmount" scale="3">830,000</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032500" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-6" name="us-gaap:DebtInstrumentCarryingAmount" scale="3">879,000</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Original issue discount and deferred financing costs</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032501" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" scale="3">18,048</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032502" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DebtInstrumentUnamortizedDiscount" scale="3">22,440</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ABL facility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032503" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:LineOfCredit" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032504" contextRef="i_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:LineOfCredit" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease obligation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032505" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3">25,962</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032506" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3">20,171</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032507" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherBorrowings" scale="3">2,236</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032508" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OtherBorrowings" scale="3">1,642</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032509" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DebtAndCapitalLeaseObligations" scale="3">840,150</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032510" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtAndCapitalLeaseObligations" scale="3">878,373</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Less: current portion of debt</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032511" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtCurrent" scale="3">553</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032512" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtCurrent" scale="3">1,075</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Less: current portion of finance lease obligation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032513" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="3">1,830</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032514" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="3">902</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032515" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3">837,767</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032516" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3">876,396</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">60</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Maturities of long-term borrowings outstanding at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>excluding finance lease obligations as their maturities are disclosed in Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#x201c;Leases,&#x201d; and before considering original issue discount and deferred financing costs, are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" id="c1434682" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032517" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" scale="3">553</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032518" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" scale="3">1,683</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032519" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032520" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032521" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="gnrc:LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" scale="3">830,000</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032522" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" scale="3">832,236</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s credit agreements originally provided for a $<ix:nonFraction id="c56032410" contextRef="i_2013-05-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-8" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="3">1,200,000</ix:nonFraction> term loan B credit facility (Term Loan) and currently include a $<ix:nonFraction id="c56032411" contextRef="i_2013-05-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-8" name="gnrc:UncommittedIncrementalTermLoanFacility" scale="3">300,000</ix:nonFraction> uncommitted incremental term loan facility. The maturity date of the Term Loan is currently <em style="font-weight: inherit; font-style: normal;"> December 13, 2026. </em>The Term Loan is guaranteed by all of the Company&#x2019;s wholly-owned domestic restricted subsidiaries, and is secured by associated collateral agreements which pledge a <em style="font-weight: inherit; font-style: normal;">first</em> priority lien on virtually all of the Company&#x2019;s assets, including fixed assets and intangibles, other than all cash, trade accounts receivable, inventory, and other current assets and proceeds thereof, which are secured by a <em style="font-weight: inherit; font-style: normal;">second</em> priority lien. The Term Loan initially bore interest at rates based upon either a base rate plus an applicable margin of <ix:nonFraction id="c56032414" contextRef="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.75</ix:nonFraction>% or adjusted LIBOR rate plus an applicable margin of <ix:nonFraction id="c56032415" contextRef="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">2.75</ix:nonFraction>%, subject to a LIBOR floor of <ix:nonFraction id="c56032416" contextRef="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">0.75</ix:nonFraction>%. Beginning in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2014,</em> and measured each quarterly period thereafter, the applicable margin related to base rate loans was reduced to <ix:nonFraction id="c56032419" contextRef="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.50</ix:nonFraction>% and the applicable margin related to LIBOR rate loans was reduced to <ix:nonFraction id="c56032420" contextRef="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">2.50</ix:nonFraction>%, in each case, if the Company&#x2019;s net debt leverage ratio, as defined in the Term Loan, fell below <ix:nonFraction id="c56032421" contextRef="d_2018-01-01_2018-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="gnrc:NetDebtLeverageRatioThreshold" scale="0">3.00</ix:nonFraction> to <em style="font-weight: inherit; font-style: normal;">1.00</em> for that measurement period.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> May 2017, </em>the Company amended its Term Loan, modifying the pricing of the facility by reducing the applicable margin rates to base rate plus a fixed applicable margin of <ix:nonFraction id="c56032423" contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.25</ix:nonFraction>% or adjusted LIBOR rate plus a fixed applicable margin of <ix:nonFraction id="c56032424" contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">2.25</ix:nonFraction>%. Further, the amendment removed the pricing grid that would reduce the applicable margin if a net debt leverage ratio of <ix:nonFraction id="c56032425" contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="gnrc:NetDebtLeverageRatioThreshold" scale="0">3.00</ix:nonFraction> to <em style="font-weight: inherit; font-style: normal;">1.00</em> was achieved. As a result, the Company does <em style="font-weight: inherit; font-style: normal;">not</em> anticipate any future catch-up gains or losses resulting from changes in contractual interest rates to be recorded in the statements of comprehensive income. At the time, the amended Term Loan pricing was still subject to the <ix:nonFraction id="c56032428" contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">0.75</ix:nonFraction>% LIBOR floor. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> <i>Debt Modifications and Extinguishments</i>, the Company capitalized $<ix:nonFraction id="c56032431" contextRef="i_2017-06-30_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" scale="3">1,432</ix:nonFraction> of fees paid to creditors as deferred financing costs on long-term borrowings and expensed $<ix:nonFraction id="c56032432" contextRef="i_2017-06-30_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtInstrumentFeeAmount" scale="3">85</ix:nonFraction> of transaction fees in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2017.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> December 2017, </em>the Company amended the Term Loan, which further reduced the applicable margin rates to base rate plus a fixed applicable margin of <ix:nonFraction id="c56032435" contextRef="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.00</ix:nonFraction>% or adjusted LIBOR rate plus a fixed applicable margin of <ix:nonFraction id="c56032436" contextRef="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">2.00</ix:nonFraction>%. Additionally, the amendment eliminated the Excess Cash Flow payment requirement for <em style="font-weight: inherit; font-style: normal;">2017,</em> and will eliminate future requirements if the Company&#x2019;s secured leverage ratio is maintained below <ix:nonFraction id="c56032438" contextRef="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SecuredLeverageRatio" scale="0">3.75</ix:nonFraction> to <em style="font-weight: inherit; font-style: normal;">1.00</em> times. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $<ix:nonFraction id="c56032442" contextRef="i_2017-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" scale="3">2,346</ix:nonFraction> of fees paid to creditors as original issue discount and deferred financing costs on long-term borrowings and expensed $<ix:nonFraction id="c56032443" contextRef="i_2017-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtInstrumentFeeAmount" scale="3">38</ix:nonFraction> of transaction fees in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2017.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company amended the Term Loan, which further reduced the applicable margin rates to base rate plus a fixed applicable margin of <ix:nonFraction id="c56032446" contextRef="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">0.75</ix:nonFraction>% or adjusted LIBOR rate plus a fixed applicable margin of <ix:nonFraction id="c56032447" contextRef="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.75</ix:nonFraction>%. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $<ix:nonFraction id="c56032450" contextRef="i_2018-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" scale="3">829</ix:nonFraction> of fees paid to creditors as deferred financing costs on long-term borrowings and expensed $<ix:nonFraction id="c56032451" contextRef="i_2018-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtInstrumentFeeAmount" scale="3">118</ix:nonFraction> of transaction fees in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> December 2019, </em>the Company amended its Term Loan to extend the maturity date from <em style="font-weight: inherit; font-style: normal;"> May 31, 2023 </em>to <em style="font-weight: inherit; font-style: normal;"> December 13, 2026, </em>as well as removed the LIBOR floor of <ix:nonFraction id="c56032454" contextRef="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">0.75</ix:nonFraction>% from the adjusted LIBOR rate. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $<ix:nonFraction id="c56032457" contextRef="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" scale="3">1,247</ix:nonFraction> of fees paid to creditors as&#xa0;deferred financing costs on long-term borrowings and expensed $<ix:nonFraction id="c56032458" contextRef="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DebtInstrumentFeeAmount" scale="3">432</ix:nonFraction> of transaction fees in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em> Additionally, the Company made a voluntary prepayment of&#xa0;$<ix:nonFraction id="c56032461" contextRef="d_2019-10-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-6" name="us-gaap:RepaymentsOfLongTermDebt" scale="3">49,000</ix:nonFraction>&#xa0;on the term loan, which resulted in the write-off of $<ix:nonFraction id="c56032462" contextRef="d_2019-10-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">926</ix:nonFraction> of original issue discount and capitalized debt issuance costs as a loss on extinguishment of debt in the consolidated statements of comprehensive income.&#xa0;&#xa0;&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Term Loan does <em style="font-weight: inherit; font-style: normal;">not</em> require an Excess Cash Flow payment if the Company&#x2019;s net secured leverage ratio is maintained below <ix:nonFraction id="c56032464" contextRef="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="gnrc:NetDebtLeverageRatioThreshold" scale="0">3.75</ix:nonFraction> to <em style="font-weight: inherit; font-style: normal;">1.00</em> times. As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company&#x2019;s net secured leverage ratio was <ix:nonFraction id="c56032466" contextRef="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SecuredLeverageRatio" scale="0">1.50</ix:nonFraction> to <em style="font-weight: inherit; font-style: normal;">1.00</em> times, and the Company was in compliance with all covenants of the Term Loan. There are <em style="font-weight: inherit; font-style: normal;">no</em> financial maintenance covenants on the Term Loan.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s credit agreements also originally provided for a senior secured ABL revolving credit facility (ABL Facility). The maturity date of the ABL Facility is currently <em style="font-weight: inherit; font-style: normal;"> June 12, 2023. </em>Borrowings under the ABL Facility are guaranteed by all of the Company&#x2019;s wholly-owned domestic restricted subsidiaries, and are secured by associated collateral agreements which pledge a <em style="font-weight: inherit; font-style: normal;">first</em> priority lien on all cash, trade accounts receivable, inventory, and other current assets and proceeds thereof, and a <em style="font-weight: inherit; font-style: normal;">second</em> priority lien on all other assets, including fixed assets and intangibles of the Company and certain domestic subsidiaries. ABL Facility borrowings initially bore interest at rates based upon either a base rate plus an applicable margin of <ix:nonFraction id="c56032471" contextRef="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.00</ix:nonFraction>% or adjusted LIBOR rate plus an applicable margin of <ix:nonFraction id="c56032472" contextRef="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">2.00</ix:nonFraction>%, in each case, subject to adjustments based upon average availability under the ABL Facility.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">61</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company amended the ABL Facility; increasing it from $<ix:nonFraction id="c56032474" contextRef="i_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="3">250,000</ix:nonFraction> to $<ix:nonFraction id="c56032475" contextRef="i_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-8" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="3">300,000</ix:nonFraction> and extending the maturity date to <em style="font-weight: inherit; font-style: normal;"> June 12, 2023. </em>In addition, the ABL Facility amendment modified the pricing by reducing certain applicable interest rates to either a base rate plus an applicable margin of <ix:nonFraction id="c56032476" contextRef="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="5" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">0.375</ix:nonFraction>% or an adjusted LIBOR rate plus an applicable margin of <ix:nonFraction id="c56032477" contextRef="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="5" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2">1.375</ix:nonFraction>%. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $<ix:nonFraction id="c56032480" contextRef="i_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFinanceCostsNet" scale="3">755</ix:nonFraction> of new debt issuance costs as deferred financing costs on long-term borrowings and wrote-off $<ix:nonFraction id="c56032481" contextRef="d_2018-04-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">34</ix:nonFraction> of capitalized debt issuance costs as a loss on extinguishment of debt in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company borrowed $<ix:nonFraction id="c56032484" contextRef="d_2018-06-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="us-gaap:ProceedsFromLinesOfCredit" scale="3">50,000</ix:nonFraction> under the ABL Facility, the proceeds of which were used as a voluntary prepayment of the Term Loan. As a result of the prepayment of the Term Loan, the Company wrote-off $<ix:nonFraction id="c56032485" contextRef="d_2018-04-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" sign="-" scale="3">1,298</ix:nonFraction> of original issue discount and capitalized debt issuance costs during the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018</em> as a loss on extinguishment of debt in the consolidated statements of comprehensive income. In <em style="font-weight: inherit; font-style: normal;"> October 2018, </em>the Company repaid the $<ix:nonFraction id="c56032488" contextRef="d_2018-10-01_2018-10-31_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="us-gaap:RepaymentsOfLinesOfCredit" scale="3">50,000</ix:nonFraction> outstanding ABL Facility balance with cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>there was $<ix:nonFraction id="c56032489" contextRef="i_2019-12-31_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LineOfCredit" scale="3">30,961</ix:nonFraction> outstanding under the ABL Facility, leaving $<ix:nonFraction id="c56032490" contextRef="i_2019-12-31_CreditFacilityAxis-AmendedABLFacilityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" scale="3">268,608</ix:nonFraction> of availability, net of outstanding letters of credit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>short-term borrowings consisted of borrowings by the Company&#x2019;s foreign subsidiaries on local lines of credit and the ABL Facility, which totaled $<ix:nonFraction id="c56032491" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">58,714</ix:nonFraction> and $<ix:nonFraction id="c56032492" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShortTermBorrowings" scale="3">45,583</ix:nonFraction>, respectively.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:TreasuryStockTextBlock" id="c1434683" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">13.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Stock Repurchase Programs</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> August 2015, </em>the Company&#x2019;s Board of Directors approved a $<ix:nonFraction id="c56032524" contextRef="i_2015-08-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-8" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" scale="3">200,000</ix:nonFraction> stock repurchase program, which the Company completed in the <em style="font-weight: inherit; font-style: normal;">third</em> quarter of <em style="font-weight: inherit; font-style: normal;">2016.</em> In <em style="font-weight: inherit; font-style: normal;"> October 2016, </em>the Company&#x2019;s Board of Directors approved a new $<ix:nonFraction id="c56032527" contextRef="i_2016-10-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" scale="3">250,000</ix:nonFraction> stock repurchase program, which expired in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018.</em> In <em style="font-weight: inherit; font-style: normal;"> September 2018, </em>the Company&#x2019;s Board of Directors approved another stock repurchase program, which commenced in <em style="font-weight: inherit; font-style: normal;"> October 2018, </em>and under which the Company <em style="font-weight: inherit; font-style: normal;"> may </em>repurchase an additional $<ix:nonFraction id="c56032530" contextRef="i_2018-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-7" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" scale="3">250,000</ix:nonFraction> of its common stock over the following <ix:nonNumeric contextRef="d_2018-09-01_2018-09-30" name="us-gaap:StockRepurchaseProgramPeriodInForce1" id="c56032531" format="ixt-sec:durmonth">24</ix:nonNumeric> months. The Company <em style="font-weight: inherit; font-style: normal;"> may </em>repurchase its common stock from time to time, in amounts and at prices the Company deems appropriate, subject to market conditions and other considerations. The repurchases <em style="font-weight: inherit; font-style: normal;"> may </em>be executed using open market purchases, privately negotiated agreements or other transactions. The actual timing, number and value of shares repurchased under the program will be determined by management at its discretion and will depend on a number of factors, including the market price of the Company&#x2019;s common stock and general market and economic conditions, applicable legal requirements, and compliance with the terms of the Company&#x2019;s outstanding indebtedness. The repurchases <em style="font-weight: inherit; font-style: normal;"> may </em>be funded with cash on hand, available borrowings or proceeds from potential debt or other capital markets sources. The stock repurchase program <em style="font-weight: inherit; font-style: normal;"> may </em>be suspended or discontinued at any time without prior notice. During the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company did <span style="-sec-ix-hidden:c56032532">not</span> repurchase any shares of its common stock. During the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>and <em style="font-weight: inherit; font-style: normal;">2017,</em> the Company repurchased <ix:nonFraction id="c56032534" contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" scale="0">560,000</ix:nonFraction> and <ix:nonFraction id="c56032535" contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" scale="0">844,500</ix:nonFraction> shares of its common stock, respectively, for $<ix:nonFraction id="c56032536" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3">25,656</ix:nonFraction> and $<ix:nonFraction id="c56032537" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3">30,012</ix:nonFraction>, respectively, all funded with cash on hand. Since the inception of the above noted programs, the Company has repurchased <ix:nonFraction id="c56032538" contextRef="d_2015-08-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:SharesAcquiredUnderStockRepurchasesProgramShares" scale="0">8,676,706</ix:nonFraction> shares of its common stock for $<ix:nonFraction id="c56032539" contextRef="d_2015-08-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3">305,547</ix:nonFraction> (at an average cost per share of $<ix:nonFraction id="c56032540" contextRef="d_2015-08-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" scale="0">35.21</ix:nonFraction>), all funded with cash on hand.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:EarningsPerShareTextBlock" id="c1434684" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">14.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Earnings Per Share</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Basic earnings per share is calculated by dividing net income attributable to the common shareholders of the Company by the weighted average number of common shares outstanding during the period, exclusive of restricted shares. Except where the result would be anti-dilutive, diluted earnings per share is calculated by assuming the vesting of unvested restricted stock and the exercise of stock options. Refer to Note <em style="font-weight: inherit; font-style: normal;">4,</em> &#x201c;Redeemable Noncontrolling Interest,&#x201d; to the consolidated financial statements for further information regarding the accounting for redeemable noncontrolling interests.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">62</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="c1434685" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Numerator</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032552" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">252,007</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032553" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">238,257</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032554" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">157,808</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redeemable noncontrolling interest redemption value adjustment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032555" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">1,253</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032556" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:MinorityInterestChangeInRedemptionValue" sign="-" scale="3">17,970</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032557" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:MinorityInterestChangeInRedemptionValue" scale="3">909</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to common shareholders</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032558" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:NetIncomeLossAvailableToCommonStockholders" scale="3">253,260</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032559" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NetIncomeLossAvailableToCommonStockholders" scale="3">220,287</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032560" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:NetIncomeLossAvailableToCommonStockholders" scale="3">158,717</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Denominator</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average shares, basic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032562" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0">61,926,986</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032563" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0">61,662,031</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032564" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0">62,040,704</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Dilutive effect of stock compensation awards (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032565" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0">938,460</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032566" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0">571,194</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032567" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0">602,168</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Diluted shares</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032568" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0">62,865,446</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032569" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0">62,233,225</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032570" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0">62,642,872</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to common shareholders per share</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Basic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032572" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">4.09</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032573" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">3.57</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032574" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">2.56</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Diluted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032575" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">4.03</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032576" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">3.54</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032577" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">2.53</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Excludes approximately <ix:nonFraction id="c56032546" contextRef="d_2018-01-01_2018-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0">26,100</ix:nonFraction> and <ix:nonFraction id="c56032547" contextRef="d_2017-01-01_2017-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0">147,400</ix:nonFraction> stock options for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, as the impact of such awards was anti-dilutive. There were <em style="font-weight: inherit; font-style: normal;"><span style="-sec-ix-hidden:c56032550">no</span></em> awards with an anti-dilutive impact for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p> </td>
     </tr>
    </tbody>
   </table>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:IncomeTaxDisclosureTextBlock" id="c1434686" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">15.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Income Taxes</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s provision for income taxes consists of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="c1434687" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Current:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Federal</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032632" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3">41,686</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032633" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3">32,072</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032634" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="3">15,753</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">State</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032635" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3">4,211</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032636" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3">9,639</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032637" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="3">1,775</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032638" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3">2,660</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032639" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3">4,546</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032640" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentForeignTaxExpenseBenefit" scale="3">4,585</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032641" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3">48,557</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032642" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3">46,257</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032643" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="3">22,113</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Federal</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032645" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3">19,393</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032646" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3">22,225</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032647" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3">18,213</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">State</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032648" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3">1,390</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032649" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3">1,910</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032650" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3">4,139</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032651" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" sign="-" scale="3">1,263</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032652" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" scale="3">479</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032653" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" sign="-" scale="3">2,777</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032654" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" scale="3">19,520</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032655" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" scale="3">24,614</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032656" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" scale="3">19,575</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Change in valuation allowance</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032657" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" sign="-" scale="3">778</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032658" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" sign="-" scale="3">1,015</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032659" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="3">2,454</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032660" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3">67,299</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032661" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3">69,856</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032662" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3">44,142</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company files U.S federal, U.S. state and foreign jurisdiction tax returns which are subject to examination up to the expiration of the statute of limitations. The Company&#xa0;believes the tax positions taken on its&#xa0;returns would be sustained upon an exam, or where a position is uncertain, adequate reserves have been recorded. As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company is <em style="font-weight: inherit; font-style: normal;">no</em> longer subject to income tax examinations for United States federal income taxes for tax years prior to <em style="font-weight: inherit; font-style: normal;">2016.</em> Due to the carryforward of net operating losses and research &amp; development credits, the Company&#x2019;s Wisconsin state income tax returns for tax years <em style="font-weight: inherit; font-style: normal;">2009</em> through <em style="font-weight: inherit; font-style: normal;">2018</em> remain open. In addition, the Company is subject to audit by various foreign taxing jurisdictions for the tax years <em style="font-weight: inherit; font-style: normal;">2013</em> through <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is regularly under examination in the various jurisdictions&#xa0;in which we operate. The Company is&#xa0;actively managing the examinations and working to address any open matters. While the Company does <em style="font-weight: inherit; font-style: normal;">not</em> believe any material taxes or penalties are due, there is a possibility that the ultimate tax outcome of an examination <em style="font-weight: inherit; font-style: normal;"> may </em>result in differences from what was recorded. Such differences <em style="font-weight: inherit; font-style: normal;"> may </em>affect the provision for income taxes in the period in which the determination is made, and could impact the Company&#x2019;s financial results.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">63</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Significant components of deferred tax assets and liabilities are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="c1434688" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred tax assets:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Accrued expenses</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032664" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" scale="3">21,053</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032665" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" scale="3">16,745</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred revenue</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032666" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsDeferredIncome" scale="3">14,697</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032667" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsDeferredIncome" scale="3">12,418</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Inventories</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032668" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsInventory" scale="3">9,879</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032669" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DeferredTaxAssetsInventory" scale="3">8,500</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Pension obligations</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032670" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032671" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" scale="3">1,062</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Stock-based compensation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032672" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" scale="3">7,490</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032673" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" scale="3">5,960</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Operating loss and credit carryforwards</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032674" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" scale="3">28,356</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032675" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" scale="3">25,585</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Bad debt</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032676" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" scale="3">1,094</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032677" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" scale="3">1,363</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032678" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" scale="3">4,275</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032679" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" scale="3">2,516</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Valuation allowance</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032680" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="3">5,024</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032681" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="3">5,802</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032682" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DeferredTaxAssetsNet" scale="3">81,820</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032683" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" scale="3">68,347</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred tax liabilities:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Goodwill and intangible assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032685" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" scale="3">142,159</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032686" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" scale="3">108,899</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Depreciation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032687" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="3">27,864</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032688" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="3">25,429</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Debt refinancing costs</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032689" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" scale="3">4,119</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032690" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" scale="3">4,206</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Prepaid expenses</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032691" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" scale="3">1,073</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032692" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" scale="3">950</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total deferred tax liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032693" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" scale="3">175,215</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032694" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" scale="3">139,484</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td style="padding-bottom: 1px;">&#xa0;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="padding-bottom: 1px;">&#xa0;</td>
       <td style="padding-bottom: 1px;">&#xa0;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net deferred tax liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032695" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilities" scale="3">93,395</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032696" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredTaxLiabilities" scale="3">71,137</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> deferred tax assets of $<ix:nonFraction id="c56032588" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3">2,933</ix:nonFraction> and $<ix:nonFraction id="c56032589" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3">163</ix:nonFraction>, and deferred tax liabilities of $<ix:nonFraction id="c56032590" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3">96,328</ix:nonFraction> and $<ix:nonFraction id="c56032591" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3">71,300</ix:nonFraction>, respectively, were reflected on the consolidated balance sheets.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains a valuation allowance against the deferred tax assets of an entity when it is uncertain the entity will generate sufficient taxable income to utilize the asset. During <em style="font-weight: inherit; font-style: normal;">2019,</em> the valuation allowance decreased by $<ix:nonFraction id="c56032593" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" sign="-" scale="3">778</ix:nonFraction> primarily due to an increase in income allowing for a utilization of tax credits, partially offset by current losses in certain foreign subsidiaries.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">At <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company had various state research &amp; development and state manufacturing tax credit carryforwards of approximately $<ix:nonFraction id="c56032594" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TaxCreditCarryForwardStateResearchAndDevelopment" scale="3">8,291</ix:nonFraction> and $<ix:nonFraction id="c56032595" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:TaxCreditCarryforwardStateManufacturing" scale="3">12,747</ix:nonFraction>, respectively, which expire between <em style="font-weight: inherit; font-style: normal;">2020</em> and <em style="font-weight: inherit; font-style: normal;">2034.</em> The Company believes it will generate sufficient taxable income in these jurisdictions to fully utilize the credits prior to their expiration.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Changes in the Company&#x2019;s gross liability for unrecognized tax benefits, excluding interest and penalties, were as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" id="c1434689" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Unrecognized tax benefit, beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032697" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3">5,635</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032698" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3">7,122</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Increase in unrecognized tax benefit for positions taken in prior period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032699" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" scale="3">633</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032700" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Increase in unrecognized tax benefit for positions taken in current period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032701" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" scale="3">495</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032702" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" scale="3">580</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Statute of limitation expirations</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032703" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" scale="3">43</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032704" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" scale="3">1,818</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Settlements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032705" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032706" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" scale="3">249</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Unrecognized tax benefit, end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032707" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:UnrecognizedTaxBenefits" scale="3">6,720</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032708" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" scale="3">5,635</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The unrecognized tax benefit as of&#xa0;<em style="font-weight: inherit; font-style: normal;"> December&#xa0;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2019</em> and <em style="font-weight: inherit; font-style: normal;">2018,</em> if recognized, would favorably impact the effective tax rate.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of&#xa0;<em style="font-weight: inherit; font-style: normal;"> December&#xa0;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2019</em> and&#xa0;<em style="font-weight: inherit; font-style: normal;">2018,</em> total accrued interest of approximately $<ix:nonFraction id="c56032605" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" scale="3">71</ix:nonFraction> and&#xa0;$<ix:nonFraction id="c56032606" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" scale="3">37</ix:nonFraction>, respectively,&#xa0;and&#xa0;accrued penalties of approximately&#xa0;$<ix:nonFraction id="c56032607" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" scale="3">195</ix:nonFraction> and&#xa0;$<ix:nonFraction id="c56032608" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" scale="3">136</ix:nonFraction>, respectively, associated with net unrecognized tax benefits are included in the consolidated balance sheets. Interest and penalties are recorded as a component of income tax expense.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company does <em style="font-weight: inherit; font-style: normal;">not</em> expect a significant increase or decrease to the total amounts of unrecognized tax benefits related to continuing operations during the fiscal year ending <em style="font-weight: inherit; font-style: normal;"> December&#xa0;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2020.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> December 22, 2017, </em>the U.S. government enacted comprehensive tax legislation commonly referred to as the Tax Cuts and Jobs Act (the &#x201c;Tax Act&#x201d;). The Tax Act includes a mandatory <em style="font-weight: inherit; font-style: normal;">one</em>-time tax on accumulated earnings of foreign subsidiaries, and as a result, all previously unremitted earnings for which <em style="font-weight: inherit; font-style: normal;">no</em> U.S. deferred tax liability had been accrued have now been subject to U.S. tax. Notwithstanding the U.S. taxation of these amounts, the Company intends to continue to invest these earnings, as well as the capital in these subsidiaries, indefinitely outside of the U.S. and do <em style="font-weight: inherit; font-style: normal;">not</em> expect to incur any significant additional taxes related to such amounts.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">64</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A reconciliation of the statutory tax rates and the effective tax rates for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="c1434690" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">U.S. statutory rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032709" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2">21.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032710" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2">21.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032711" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2">35.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032712" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2">4.3</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032713" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2">4.7</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032714" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2">4.1</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State tax rate differential</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032715" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="gnrc:EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" sign="-" scale="-2">1.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Research and development credits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032718" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" scale="-2">0.8</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032719" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" scale="-2">1.3</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032720" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" scale="-2">1.4</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State credits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032721" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" scale="-2">1.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032722" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" scale="-2">1.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032723" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" scale="-2">0.2</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Share-based compensation (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032724" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" sign="-" scale="-2">0.6</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032725" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" sign="-" scale="-2">0.5</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032726" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" sign="-" scale="-2">1.4</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Tax Act impact (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032728" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" sign="-" scale="-2">0.2</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032729" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" sign="-" scale="-2">13.9</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032730" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" sign="-" scale="-2">0.8</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032731" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" sign="-" scale="-2">0.2</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032732" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" sign="-" scale="-2">0.9</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Effective tax rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032733" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2">21.1</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032734" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2">22.5</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032735" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2">21.3</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">With the adoption of ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">09</em> in <em style="font-weight: inherit; font-style: normal;">2017,</em> excess tax benefits from equity awards are reflected within the provision for income taxes rather than within the consolidated balance sheet.</p> </td>
     </tr>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</td>
      <td style="vertical-align:top;">As a result of the Tax Act, we recognized a <em style="font-weight: inherit; font-style: normal;">one</em>-time, non-cash benefit of $<ix:nonFraction id="c56032626" contextRef="d_2017-10-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" scale="6">28.4</ix:nonFraction> million in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2017</em> primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from <em style="font-weight: inherit; font-style: normal;">35%</em> to <em style="font-weight: inherit; font-style: normal;">21%.</em>&#xa0;</td>
     </tr>
    </tbody>
   </table>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:18pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock" id="c1434691" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">16.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Benefit Plans</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Medical and Dental Plan</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains medical and dental benefit plans covering its full-time domestic employees and their dependents. Certain plans are partially or fully self-funded under which participant claims are obligations of the plan. These plans are funded through employer and employee contributions at a level sufficient to pay for the benefits provided by the plan. The Company&#x2019;s contributions to the plans were $<ix:nonFraction id="c56032737" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:EmployerContributionUnderMedicalAndDentalPlan" scale="3">18,290</ix:nonFraction>, $<ix:nonFraction id="c56032738" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:EmployerContributionUnderMedicalAndDentalPlan" scale="3">14,660</ix:nonFraction>, and $<ix:nonFraction id="c56032739" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:EmployerContributionUnderMedicalAndDentalPlan" scale="3">14,992</ix:nonFraction> for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s foreign subsidiaries participate in government sponsored medical benefit plans. In certain cases, the Company purchases supplemental medical coverage for certain employees at these foreign locations. The expenses related to these plans are <em style="font-weight: inherit; font-style: normal;">not</em> material to the Company&#x2019;s consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Savings Plan</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains a defined-contribution <em style="font-weight: inherit; font-style: normal;">401</em>(k) savings plan for eligible domestic employees. Under the plan, employees <em style="font-weight: inherit; font-style: normal;"> may </em>defer receipt of a portion of their eligible compensation. The Company <em style="font-weight: inherit; font-style: normal;"> may </em>contribute a matching contribution of <ix:nonFraction id="c56032744" contextRef="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" scale="-2">50</ix:nonFraction>% of the <em style="font-weight: inherit; font-style: normal;">first</em> <ix:nonFraction id="c56032746" contextRef="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="gnrc:DefinedContributionPlanPercentageOfEligibleCompensation" scale="-2">6</ix:nonFraction>% of eligible compensation of employees. The Company <em style="font-weight: inherit; font-style: normal;"> may </em>also contribute a non-elective contribution for eligible employees employed on <em style="font-weight: inherit; font-style: normal;"> December 31, 2008 </em>that were impacted by the freezing of the Company&#x2019;s pension plans. The Company&#x2019;s matching contributions are subject to vesting. Forfeitures <em style="font-weight: inherit; font-style: normal;"> may </em>be applied against plan expenses and company contributions. The Company recognized $<ix:nonFraction id="c56032747" contextRef="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedContributionPlanCostRecognized" scale="3">4,791</ix:nonFraction>, $<ix:nonFraction id="c56032748" contextRef="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedContributionPlanCostRecognized" scale="3">4,193</ix:nonFraction> and $<ix:nonFraction id="c56032749" contextRef="d_2017-01-01_2017-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DefinedContributionPlanCostRecognized" scale="3">3,600</ix:nonFraction> of expense related to these plans in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Pension Plans</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Historically, the Company maintained frozen noncontributory salaried and hourly pension plans (Pension Plans) covering certain domestic employees. The Pension Plans were frozen effective <em style="font-weight: inherit; font-style: normal;"> December 31, 2008. </em>Effective <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>the Pension Plans were merged into the same plan (Pension Plan), resulting in <em style="font-weight: inherit; font-style: normal;">no</em> change to benefits for participants. The benefits under the salaried plan were based upon years of service and the participants&#x2019; defined final average monthly compensation. The benefits under the hourly plan were based on a unit amount at the date of termination multiplied by the participant&#x2019;s years of credited service.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;">2019,</em> the Company completed the termination of its Pension Plan. &#xa0;In connection with the Company&#x2019;s activities to terminate the plan, lump sum distributions were made in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019</em> to individuals who elected lump sum distributions, including rolling over their accounts to the Company&#x2019;s <em style="font-weight: inherit; font-style: normal;">401</em>(k) savings plan. Also in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> annuity contracts were purchased to settle obligations for the remaining participants.&#xa0;Upon settlement of the pension liability, the Company reclassified related unrecognized pension losses recorded in&#xa0;AOCL to the consolidated statements of comprehensive income. As a result, the Company recorded pre-tax settlement charges of $<ix:nonFraction id="c56032760" contextRef="d_2019-10-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanSettlementsBenefitObligation" scale="3">10,920</ix:nonFraction> in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">65</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s historical funding policy for the Pension Plans was to contribute amounts at least equal to the minimum annual amount required by applicable regulations. In the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>the Company made a voluntary pension prepayment of $<ix:nonFraction id="c56032764" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:PensionContributions" scale="3">9,400</ix:nonFraction>. In the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company made required contributions of $<ix:nonFraction id="c56032765" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PensionContributions" scale="3">1,017</ix:nonFraction> in connection with the plan termination. <em style="font-weight: inherit; font-style: normal;">No</em> additional contributions will be required in future years as the pension plan termination was finalized in <em style="font-weight: inherit; font-style: normal;">2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table provides a reconciliation of benefit obligations, plan assets and funded status of the Pension Plan based on a <em style="font-weight: inherit; font-style: normal;"> December 31 </em>measurement date:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" id="c1434692" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accumulated benefit obligation at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032786" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032787" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation" scale="3">65,978</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Change in projected benefit obligation</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Projected benefit obligation at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032789" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" scale="3">65,978</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032790" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" scale="3">72,631</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032791" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3">2,401</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032792" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3">2,575</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net actuarial (gain) loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032793" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" sign="-" scale="3">3,452</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032794" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanActuarialGainLoss" scale="3">6,820</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Benefits paid</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032795" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" scale="3">31,321</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032796" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid" scale="3">2,408</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Annuities purchased</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032797" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" scale="3">40,510</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032798" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Projected benefit obligation at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032799" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032800" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligation" scale="3">65,978</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Change in plan assets</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fair value of plan assets at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032802" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">61,870</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032803" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">58,014</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Actual return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032804" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets" scale="3">8,944</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032805" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets" sign="-" scale="3">3,507</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Company contributions</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032806" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanContributionsByEmployer" scale="3">1,017</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032807" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanContributionsByEmployer" scale="3">9,771</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Benefits paid</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032808" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid" scale="3">31,321</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032809" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid" scale="3">2,408</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Annuities purchased</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56032810" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" scale="3">40,510</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032811" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fair value of plan assets at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032812" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032813" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">61,870</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Funded status: accrued pension liability included in other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032814" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanFundedStatusOfPlan" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032815" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFundedStatusOfPlan" sign="-" scale="3">4,108</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Amounts recognized in accumulated other comprehensive loss</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#xa0;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net actuarial loss, net of tax</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032817" contextRef="i_2019-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032818" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" sign="-" scale="3">10,541</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The actuarial loss for the Pension Plan that was amortized from AOCL into net periodic pension cost during <em style="font-weight: inherit; font-style: normal;">2019</em> prior to the pension plan termination was $<ix:nonFraction id="c56032769" contextRef="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" sign="-" scale="3">843</ix:nonFraction>.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The actuarial assumption used in the determination of the benefit obligation of the above data is:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" id="c1434693" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average discount rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032820" contextRef="i_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" scale="-2">4.24</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth the components of net periodic pension cost (benefit) for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017:</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfNetBenefitCostsTableTextBlock" id="c1434694" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 55%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032821" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3">2,401</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032822" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3">2,575</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032823" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3">2,688</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expected return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032824" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" scale="3">3,500</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032825" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" scale="3">3,525</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032826" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" scale="3">3,011</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of net loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032827" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" sign="-" scale="3">843</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032828" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" sign="-" scale="3">802</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032829" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses" sign="-" scale="3">883</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032830" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" sign="-" scale="3">10,920</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032831" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032832" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" sign="-" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net periodic pension cost (benefit)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032833" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3">10,664</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c56032834" contextRef="d_2018-01-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" sign="-" scale="3">148</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032835" contextRef="d_2017-01-01_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3">560</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">66</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Weighted-average assumptions used to determine net periodic pension cost (benefit) are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-NetPeriodicBenefitCostsMember" name="us-gaap:ScheduleOfAssumptionsUsedTableTextBlock" id="c1434695" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Discount Rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032836" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2">4.24</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032837" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2">3.60</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032838" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" scale="-2">4.14</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expected long-term rate of return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032839" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" scale="-2">6.60</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032840" contextRef="d_2018-01-01_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" scale="-2">6.19</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><ix:nonFraction id="c56032841" contextRef="d_2017-01-01_2017-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" scale="-2">6.58</ix:nonFraction>%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Rate of compensation increase (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="margin: 0pt;">&#xa0;</p>
   <table cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt; margin-left: 0pt; margin-right: 0pt;">
    <tbody>
     <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt;">
      <td colspan="1" style="vertical-align: middle; width: 100%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt; margin: 0pt; text-align: left;">(<em style="font-weight: inherit; font-style: normal;">1</em>)&#xa0; <em style="font-weight: inherit; font-style: normal;">No</em> compensation increase was assumed as the Pension Plan was frozen effective <em style="font-weight: inherit; font-style: normal;"> December 31, 2008.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">To determine the long-term rate of return assumption for the plans&#x2019; assets, the Company studied historical markets and preserved the long-term historical relationship between equities and fixed-income securities consistent with the widely accepted capital market principle that assets with higher volatility generate a greater return over the long run. The Company evaluated current market factors such as inflation and interest rates before it determined long-term capital market assumptions and reviewed peer data and historical returns to check for reasonableness and appropriateness.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The fair value of the qualified pension plan assets was $<ix:nonFraction id="c56032775" contextRef="i_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">0</ix:nonFraction> at <em style="font-weight: inherit; font-style: normal;"> December&#xa0;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2019</em> and $<ix:nonFraction id="c56032778" contextRef="i_2018-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">61,870</ix:nonFraction> at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>The Pension Plan&#x2019;s weighted-average asset allocation at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>by asset category, is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock" id="c1434696" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Target Allocation</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Asset Category</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Minimum</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Maximum</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Dollars</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>%</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fixed income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032845" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MinimumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">15.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032846" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MaximumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">25.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032847" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">12,257</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032848" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2">20</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic equity</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032849" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MinimumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">36.5</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032850" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MaximumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">61.5</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032851" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">30,731</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032852" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2">50</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International equity</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032853" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MinimumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">17.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032854" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MaximumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">25.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032855" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">12,380</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032856" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2">20</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Real estate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032857" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MinimumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">7.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032858" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MaximumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">15.0</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032859" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">6,502</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032860" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2">10</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032863" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">61,870</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032864" contextRef="i_2018-12-31" unitRef="Pure" format="ixt:numdotdecimal" decimals="0" name="us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations" scale="-2">100</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The fair values of the Pension Plans&#x2019; assets at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>were as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ScheduleOfFairValueOfPlanAssetsTableTextBlock" id="c1434697" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quoted Prices in Active Markets for Identical Asset</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 1)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Significant Observable Inputs</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 2)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Significant Unobservable Inputs</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 3)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Mutual funds</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032865" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">51,736</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032866" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">51,736</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#x2013;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032867" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">&#x2013;</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Other investments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032868" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">10,134</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032869" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">&#x2013;</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#x2013;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032870" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">10,134</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt; margin-left: 27pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032871" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">61,870</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032872" contextRef="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">51,736</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#x2013;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032873" contextRef="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">10,134</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A reconciliation of beginning and ending balances for Level <em style="font-weight: inherit; font-style: normal;">3</em> assets for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" id="c1434698" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>201</b><b>8</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032874" contextRef="i_2017-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">9,700</ix:nonFraction></td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Purchases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032875" contextRef="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" scale="3">3,805</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redemptions</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56032876" contextRef="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" scale="3">3,795</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Realized gains</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c56032877" contextRef="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" scale="3">424</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56032878" contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DefinedBenefitPlanFairValueOfPlanAssets" scale="3">10,134</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#xa0;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Mutual Funds</i></b> &#x2013; This category includes investments in mutual funds that encompass both equity and fixed income securities that are designed to provide a diverse portfolio. The plans&#x2019; mutual funds are designed to track exchange indices, and invest in diverse industries. Some mutual funds are classified as regulated investment companies. Investment managers have the ability to shift investments from value to growth strategies, from small to large capitalization funds, and from U.S. to international investments. These investments are valued at the closing price reported on the active market on which the individual securities are traded. These investments are classified within Level <em style="font-weight: inherit; font-style: normal;">1</em> of the fair value hierarchy.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Other Investments</i></b> &#x2013; This category includes investments in limited partnerships and are valued at estimated fair value, as determined with the assistance of each respective limited partnership, based on the net asset value of the investment as of the balance sheet date, which is subject to judgment, and therefore is classified within Level <em style="font-weight: inherit; font-style: normal;">3</em> of the fair value hierarchy.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em></div></div><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"><em style="font-weight: inherit; font-style: normal;">67</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
    </div>
   </div>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#x2019;s historical target allocation for equity securities and real estate was generally between <ix:nonFraction id="c56032783" contextRef="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MinimumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">75</ix:nonFraction>% to <ix:nonFraction id="c56032784" contextRef="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MaximumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" scale="-2">85</ix:nonFraction>%, with the remainder allocated primarily to fixed income (bonds). The Company regularly reviewed its actual asset allocation and periodically rebalanced its investments to the targeted allocation when considered appropriate.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Certain of the Company&#x2019;s foreign subsidiaries participate in local statutory defined benefit or other post-employment benefit plans. These plans provide benefits that are generally based on years of credited service and a percentage of the employee&#x2019;s eligible compensation earned throughout the applicable service period. Liabilities recorded under these plans are included in other long-term liabilities in the Company&#x2019;s consolidated balance sheets and are <em style="font-weight: inherit; font-style: normal;">not</em> material.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="c1434699" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">17.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Share Plans</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company adopted an equity incentive plan (Plan) on <em style="font-weight: inherit; font-style: normal;"> February 10, 2010 </em>in connection with its initial public offering. The Plan, as amended, allows for granting of up to <ix:nonFraction id="c56032880" contextRef="i_2010-02-10" unitRef="Share" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="6">9.1</ix:nonFraction> million share-based awards to executives, directors and employees. Awards available for grant under the Plan include stock options, stock appreciation rights, restricted stock, other share-based awards and performance-based compensation awards. Total share-based compensation expense related to the Plan, net of estimated forfeitures, was $<ix:nonFraction id="c56032881" contextRef="d_2019-01-01_2019-12-31_PlanNameAxis-EquityIncentivePlanPlanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">15,738</ix:nonFraction>, $<ix:nonFraction id="c56032882" contextRef="d_2018-01-01_2018-12-31_PlanNameAxis-EquityIncentivePlanPlanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">14,563</ix:nonFraction> and $<ix:nonFraction id="c56032883" contextRef="d_2017-01-01_2017-12-31_PlanNameAxis-EquityIncentivePlanPlanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">10,205</ix:nonFraction> for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> June 13, 2019, </em>the stockholders of Generac Holdings Inc. approved the Company&#x2019;s <em style="font-weight: inherit; font-style: normal;">2019</em> Equity Incentive Plan (<em style="font-weight: inherit; font-style: normal;">2019</em> Plan). The <em style="font-weight: inherit; font-style: normal;">2019</em> Plan allows for granting of up to <ix:nonFraction id="c56032889" contextRef="i_2019-06-13_PlanNameAxis-The2019EquityIncentivePlanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="-5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="6">2.7</ix:nonFraction> million share-based awards to executives, directors and employees. Awards available for grant under the Plan include stock options, stock appreciation rights, restricted stock, other share-based awards and performance-based compensation awards. Total share-based compensation expense related to the <em style="font-weight: inherit; font-style: normal;">2019</em> Plan, net of estimated forfeitures, was $<ix:nonFraction id="c56032891" contextRef="d_2019-01-01_2019-12-31_PlanNameAxis-The2019EquityIncentivePlanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">956</ix:nonFraction>&#xa0;for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Stock Options</i></b> - Stock options granted in <em style="font-weight: inherit; font-style: normal;">2019</em> have an exercise price of $<ix:nonFraction id="c56032893" contextRef="d_2019-01-01_2019-12-31_RangeAxis-MinimumMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">52.07</ix:nonFraction> per share; stock options granted in <em style="font-weight: inherit; font-style: normal;">2018</em> have an exercise price between $<ix:nonFraction id="c56032895" contextRef="d_2018-01-01_2018-12-31_RangeAxis-MinimumMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">43.88</ix:nonFraction> per share and $<ix:nonFraction id="c56032896" contextRef="d_2018-01-01_2018-12-31_RangeAxis-MaximumMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">45.29</ix:nonFraction> per share; and stock options granted in <em style="font-weight: inherit; font-style: normal;">2017</em> have an exercise price between $<ix:nonFraction id="c56032898" contextRef="d_2017-01-01_2017-12-31_RangeAxis-MinimumMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">40.12</ix:nonFraction> per share and $<ix:nonFraction id="c56032899" contextRef="d_2017-01-01_2017-12-31_RangeAxis-MaximumMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">48.98</ix:nonFraction> per share. Stock options vest in equal installments over <span style="-sec-ix-hidden:c56032900">four</span> years, subject to the grantee&#x2019;s continued employment or service and expire <span style="-sec-ix-hidden:c56032901">ten</span> years after the date of grant.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Stock option exercises can be net-share settled such that the Company withholds shares with value equivalent to the exercise price of the stock option awards plus the employees&#x2019; minimum statutory obligation for the applicable income and other employment taxes. Total shares withheld were <ix:nonFraction id="c56032902" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0">32,211</ix:nonFraction>, <ix:nonFraction id="c56032903" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0">63,817</ix:nonFraction> and <ix:nonFraction id="c56032904" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0">9,033</ix:nonFraction> in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and were based on the value of the stock on the exercise dates. The net-share settlement has the effect of share repurchases by the Company as they reduce the number of shares that would have otherwise been issued.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Employees can also utilize a cashless for cash exercise of stock options, such that all exercised shares will be sold in the market immediately. Cash equivalent to the exercise price of the awards plus the employees&#x2019; minimum statutory tax obligations is remitted to the Company, with the remaining cash being transferred to the employee. Total net proceeds from the cashless for cash exercise of stock options were $<ix:nonFraction id="c56032908" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3">9,395</ix:nonFraction>, $<ix:nonFraction id="c56032909" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3">5,614</ix:nonFraction> and $<ix:nonFraction id="c56032910" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3">6,951</ix:nonFraction> in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and are reflected as a financing activity in the consolidated statement of cash flows.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total payments made by the Company to the taxing authorities for the employees&#x2019; tax obligations related to stock option exercises were $<ix:nonFraction id="c56032914" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">3,360</ix:nonFraction>, $<ix:nonFraction id="c56032915" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">3,846</ix:nonFraction> and $<ix:nonFraction id="c56032916" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">4,301</ix:nonFraction> in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and are reflected as a financing activity in the consolidated statements of cash flows.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The grant-date fair value of each option grant is estimated using the Black-Scholes-Merton option pricing model. The fair value is then amortized on a straight-line basis over the requisite service period of the awards, which is generally the vesting period. Use of a valuation model requires management to make certain assumptions with respect to selected model inputs. Expected volatility is calculated based on an analysis of historic volatility of the Company&#x2019;s stock price. The average expected life is based on the contractual term of the option using the simplified method. The risk-free interest rate is based on U.S. Treasury <em style="font-weight: inherit; font-style: normal;">zero</em>-coupon issues with a remaining term equal to the expected life assumed at the date of grant. The compensation expense recognized is net of estimated forfeitures. Forfeitures are estimated based on actual share option forfeiture history.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">68</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The weighted-average assumptions used in the Black-Scholes-Merton option pricing model for <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="c1434700" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average grant date fair value</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032994" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0">19.33</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032995" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0">17.86</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032996" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0">16.84</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Assumptions:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected stock price volatility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032998" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2">33</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56032999" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2">37</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033000" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="1" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2">40</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Risk free interest rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033001" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2">2.52</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033002" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2">2.60</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033003" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2">1.92</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected annual dividend per share</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033004" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USDPerShare" format="ixt:zerodash" decimals="INF" name="gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" scale="0">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033005" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USDPerShare" format="ixt:zerodash" decimals="INF" name="gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" scale="0">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033006" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USDPerShare" format="ixt:zerodash" decimals="INF" name="gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" scale="0">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected life of options (years)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="c56033007" format="ixt-sec:duryear">6.25</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="c56033008" format="ixt-sec:duryear">6.25</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="c56033009" format="ixt-sec:duryear">6.25</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A summary of the Company&#x2019;s stock option activity and related information for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="c1434701" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Number of </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Options</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Exercise Price</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average Remaining Contractual Term (in years)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Aggregate Intrinsic Value </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>($ in thousands)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2016</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033010" contextRef="i_2016-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0">1,482,964</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033011" contextRef="i_2016-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0">27.49</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2016-01-01_2016-12-31" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="c56033012" format="ixt-sec:duryear">7.5</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033013" contextRef="i_2016-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3">23,840</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033014" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0">346,421</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033015" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">40.13</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033018" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0">287,375</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033019" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0">10.58</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56033022" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="0">69,880</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033023" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0">41.12</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56033026" contextRef="i_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0">1,472,130</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033027" contextRef="i_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0">33.11</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2017-01-01_2017-12-31" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="c56033028" format="ixt-sec:duryear">7.3</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033029" contextRef="i_2017-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3">25,281</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033030" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0">366,231</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033031" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">43.88</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033034" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0">267,909</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033035" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0">19.90</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56033038" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="0">49,285</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033039" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0">43.34</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56033042" contextRef="i_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0">1,521,167</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033043" contextRef="i_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0">37.70</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2018-01-01_2018-12-31" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="c56033044" format="ixt-sec:duryear">7.0</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033045" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3">19,212</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033046" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0">369,779</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033047" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0">52.07</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033050" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0">263,250</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033051" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0">30.75</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56033054" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="0">35,010</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033055" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0">43.79</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#xa0;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56033058" contextRef="i_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0">1,592,686</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033059" contextRef="i_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0">42.04</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="c56033060" format="ixt-sec:duryear">6.9</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033061" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3">93,242</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercisable as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033062" contextRef="i_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0">726,817</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033063" contextRef="i_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0">37.78</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="c56033064" format="ixt-sec:duryear">5.3</ix:nonNumeric></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033065" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="3">45,649</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>there was $<ix:nonFraction id="c56032927" contextRef="i_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="3">10,649</ix:nonFraction> of total unrecognized compensation cost, net of expected forfeitures, related to unvested options. The cost is expected to be recognized over the remaining service period, having a weighted-average period of <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c56032928" format="ixt-sec:duryear">2.5</ix:nonNumeric>&#xa0;years. Total share-based compensation cost related to the stock options for <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> was $<ix:nonFraction id="c56032932" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">5,597</ix:nonFraction>, $<ix:nonFraction id="c56032933" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">4,998</ix:nonFraction> and $<ix:nonFraction id="c56032934" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">4,503</ix:nonFraction>, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Restricted Stock</i></b> &#x2013; Restricted stock awards vest in equal installments over <span style="-sec-ix-hidden:c56032935">three</span> years, subject to the grantee&#x2019;s continued employment or service. Certain restricted stock awards also include performance shares, which were awarded in the years <em style="font-weight: inherit; font-style: normal;">2014</em> through <em style="font-weight: inherit; font-style: normal;">2019.</em> The number of performance shares that can be earned are contingent upon Company performance measures over a <span style="-sec-ix-hidden:c56032938">three</span>-year period. Performance measures are based on a weighting of a number of financial metrics, from which grantees <em style="font-weight: inherit; font-style: normal;"> may </em>earn from <ix:nonFraction id="c56032939" contextRef="i_2019-12-31_RangeAxis-MinimumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="-3" name="gnrc:PerformanceShareAwardPercentage" scale="-2">0</ix:nonFraction>% to <ix:nonFraction id="c56032940" contextRef="i_2019-12-31_RangeAxis-MaximumMember" unitRef="Pure" format="ixt:numdotdecimal" decimals="0" name="gnrc:PerformanceShareAwardPercentage" scale="-2">200</ix:nonFraction>% of their target performance share award. The performance period for the <em style="font-weight: inherit; font-style: normal;">2017</em> awards covers the years <em style="font-weight: inherit; font-style: normal;">2017</em> through <em style="font-weight: inherit; font-style: normal;">2019,</em> the performance period for the <em style="font-weight: inherit; font-style: normal;">2018</em> awards covers the years <em style="font-weight: inherit; font-style: normal;">2018</em> through <em style="font-weight: inherit; font-style: normal;">2020,</em> and the performance period for the <em style="font-weight: inherit; font-style: normal;">2019</em> awards covers the years <em style="font-weight: inherit; font-style: normal;">2019</em> through <em style="font-weight: inherit; font-style: normal;">2021.</em> The Company estimates the number of performance shares that will vest based on projected financial performance. The fair value of restricted awards is determined based on the market value of the Company's shares on the grant date. The fair market value of the restricted awards at the time of the grant is amortized to expense over the period of vesting. The compensation expense recognized for restricted share awards is net of estimated forfeitures.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Restricted stock vesting is net-share settled such that, upon vesting, the Company withholds shares with value equivalent to the employees&#x2019; minimum statutory tax obligation, and then pays the cash to the taxing authorities on behalf of the employees. In effect, the Company repurchases these shares and classifies them as treasury stock. Total shares withheld were <ix:nonFraction id="c56032950" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0">55,953</ix:nonFraction>, <ix:nonFraction id="c56032951" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0">38,186</ix:nonFraction> and <ix:nonFraction id="c56032952" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0">39,500</ix:nonFraction> in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and were based on the value of the stock on the vesting dates. Total payments made by the Company to the taxing authorities for the employees&#x2019; tax obligations related to restricted stock vesting&#xa0;were $<ix:nonFraction id="c56032956" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">3,078</ix:nonFraction>, $<ix:nonFraction id="c56032957" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">1,812</ix:nonFraction> and $<ix:nonFraction id="c56032958" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3">1,591</ix:nonFraction> in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and are reflected as a financing activity within the consolidated statements of cash flows.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"></em>
    </div>
   </div>
   <ix:exclude>
    <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
     <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
      <em style="font-weight: inherit; font-style: normal;">69</em>
     </div>
     <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
     <div class="PGHDR" style="text-align: left; width: 100%">
      <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
     </div>
    </div> <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A summary of the Company's restricted stock activity for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" id="c1434702" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Shares</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average Grant-Date Fair Value</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2016</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033066" contextRef="i_2016-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0">361,403</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033067" contextRef="i_2016-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0">38.18</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033068" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0">211,769</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033069" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0">39.91</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033070" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0">133,796</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033071" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0">40.60</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56033072" contextRef="d_2017-01-01_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="0">47,100</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033073" contextRef="d_2017-01-01_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0">42.48</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56033074" contextRef="i_2017-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0">392,276</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033075" contextRef="i_2017-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0">37.77</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033076" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0">208,803</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033077" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0">44.49</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033078" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0">128,433</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033079" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0">39.03</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56033080" contextRef="d_2018-01-01_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="0">46,650</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033081" contextRef="d_2018-01-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0">39.43</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56033082" contextRef="i_2018-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0">425,996</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033083" contextRef="i_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0">40.50</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033084" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0">265,255</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033085" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0">62.38</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033086" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0">184,628</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033087" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0">38.78</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c56033088" contextRef="d_2019-01-01_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="0">14,986</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033089" contextRef="d_2019-01-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0">44.23</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56033090" contextRef="i_2019-12-31" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0">491,637</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033091" contextRef="i_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0">52.84</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>there was $<ix:nonFraction id="c56032965" contextRef="i_2019-12-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="3">16,165</ix:nonFraction> of unrecognized compensation cost, net of expected forfeitures, related to non-vested restricted stock awards. That cost is expected to be recognized over the remaining service period, having a weighted-average period of <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c56032966" format="ixt-sec:duryear">1.9</ix:nonNumeric> years. Total share-based compensation cost related to the restricted stock for <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> inclusive of performance shares, was $<ix:nonFraction id="c56032970" contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">11,097</ix:nonFraction>, $<ix:nonFraction id="c56032971" contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">9,565</ix:nonFraction> and $<ix:nonFraction id="c56032972" contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3">5,702</ix:nonFraction>, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">During <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> <ix:nonFraction id="c56032976" contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued" scale="0">22,544</ix:nonFraction>, <ix:nonFraction id="c56032977" contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued" scale="0">33,419</ix:nonFraction> and <ix:nonFraction id="c56032978" contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued" scale="0">34,095</ix:nonFraction> shares of stock, respectively,&#xa0;were granted to certain members of the Company&#x2019;s Board of Directors as a component of their compensation for their service on the Board, of which <ix:nonFraction id="c56032979" contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:DeferredCompensationArrangementWithIndividualSharesVested" scale="0">22,544</ix:nonFraction>, <ix:nonFraction id="c56032980" contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:DeferredCompensationArrangementWithIndividualSharesVested" scale="0">33,419</ix:nonFraction> and <ix:nonFraction id="c56032981" contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:DeferredCompensationArrangementWithIndividualSharesVested" scale="0">22,762</ix:nonFraction> shares, respectively, were fully vested at time of grant. Non-employee directors can elect to receive his or her director fees in the form of deferred stock units, which voluntarily defers the issuance of the related shares granted until the director separates from the Company or a triggering event occurs. <ix:nonFraction id="c56032982" contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:DeferredCompensationArrangementWithIndividualSharesGranted" scale="0">16,604</ix:nonFraction>, <ix:nonFraction id="c56032983" contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:DeferredCompensationArrangementWithIndividualSharesGranted" scale="0">22,675</ix:nonFraction>, and <ix:nonFraction id="c56032984" contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="Share" format="ixt:numdotdecimal" decimals="INF" name="gnrc:DeferredCompensationArrangementWithIndividualSharesGranted" scale="0">11,333</ix:nonFraction> of deferred stock units are included in the shares of stock granted to certain members of the Company&#x2019;s Board of Directors for the years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Total share-based compensation cost for these share grants in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> was $<ix:nonFraction id="c56032991" contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense" scale="3">1,391</ix:nonFraction>, $<ix:nonFraction id="c56032992" contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense" scale="3">1,718</ix:nonFraction> and $<ix:nonFraction id="c56032993" contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense" scale="3">1,133</ix:nonFraction>, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="c1434703" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">18.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Commitments and Contingencies</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company has an arrangement with a finance company to provide floor plan financing for certain dealers. The Company receives payment from the finance company after shipment of product to the dealer. The Company participates in the cost of dealer financing up to certain limits and has agreed to repurchase products repossessed by the finance company, but does <em style="font-weight: inherit; font-style: normal;">not</em> indemnify the finance company for any credit losses they incur. The amount financed by dealers which remained outstanding under this arrangement at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> was approximately $<ix:nonFraction id="c56033095" contextRef="i_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="gnrc:AmountFinancedByDealers" scale="3">49,600</ix:nonFraction> and $<ix:nonFraction id="c56033096" contextRef="i_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-5" name="gnrc:AmountFinancedByDealers" scale="3">47,200</ix:nonFraction>, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In the normal course of business, the Company is named as a defendant in various lawsuits in which claims are asserted against the Company. In the opinion of management, the liabilities, if any, which <em style="font-weight: inherit; font-style: normal;"> may </em>result from such lawsuits are <em style="font-weight: inherit; font-style: normal;">not</em> expected to have a material adverse effect on the financial position, results of operations, or cash flows of the Company.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"></p><ix:exclude><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;">70</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a></div></div></ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGHDR" style="text-align: left; width: 100%"><a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt"></a>
    </div>
   </div>
  </ix:nonNumeric>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    &#xa0;
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:QuarterlyFinancialInformationTextBlock" id="c1434704" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">19.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Quarterly Financial Information (Unaudited)</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock" id="C34C5401-32FF-44C1-A6C8-655584036379" escape="true" continuedAt="c1758453F-4B68-458B-870E-E6F438E75E6B">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quarters Ended 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q1</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q2</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q3</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q4</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033100" contextRef="d_2019-01-01_2019-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">470,353</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033101" contextRef="d_2019-04-01_2019-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">541,916</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033102" contextRef="d_2019-07-01_2019-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">601,135</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033103" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">590,932</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033104" contextRef="d_2019-01-01_2019-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">162,175</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033105" contextRef="d_2019-04-01_2019-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">195,838</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033106" contextRef="d_2019-07-01_2019-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">217,517</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033107" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">222,222</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033108" contextRef="d_2019-01-01_2019-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">71,173</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033109" contextRef="d_2019-04-01_2019-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">90,926</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033110" contextRef="d_2019-07-01_2019-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">105,556</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033111" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">104,508</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033112" contextRef="d_2019-01-01_2019-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">44,861</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033113" contextRef="d_2019-04-01_2019-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">61,958</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033114" contextRef="d_2019-07-01_2019-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">75,574</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033115" contextRef="d_2019-10-01_2019-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">69,614</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033116" contextRef="d_2019-01-01_2019-03-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">0.77</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033117" contextRef="d_2019-04-01_2019-06-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">0.99</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033118" contextRef="d_2019-07-01_2019-09-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">1.20</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033119" contextRef="d_2019-10-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">1.14</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033120" contextRef="d_2019-01-01_2019-03-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">0.76</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033121" contextRef="d_2019-04-01_2019-06-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">0.98</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033122" contextRef="d_2019-07-01_2019-09-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">1.18</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033123" contextRef="d_2019-10-01_2019-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">1.12</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c1758453F-4B68-458B-870E-E6F438E75E6B">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 605px;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quarters Ended 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q1</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q2</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q3</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 132px;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q4</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033124" contextRef="d_2018-01-01_2018-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">400,091</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033125" contextRef="d_2018-04-01_2018-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">497,581</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033126" contextRef="d_2018-07-01_2018-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">562,388</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033127" contextRef="d_2018-10-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3">563,404</ix:nonFraction></td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033128" contextRef="d_2018-01-01_2018-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">141,927</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033129" contextRef="d_2018-04-01_2018-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">178,473</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033130" contextRef="d_2018-07-01_2018-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">200,334</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033131" contextRef="d_2018-10-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:GrossProfit" scale="3">204,306</ix:nonFraction></td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033132" contextRef="d_2018-01-01_2018-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">56,347</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033133" contextRef="d_2018-04-01_2018-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">85,467</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033134" contextRef="d_2018-07-01_2018-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">106,519</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033135" contextRef="d_2018-10-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:OperatingIncomeLoss" scale="3">108,848</ix:nonFraction></td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033136" contextRef="d_2018-01-01_2018-03-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">33,645</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033137" contextRef="d_2018-04-01_2018-06-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">53,261</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033138" contextRef="d_2018-07-01_2018-09-30" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">75,776</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033139" contextRef="d_2018-10-01_2018-12-31" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3">75,575</ix:nonFraction></td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033140" contextRef="d_2018-01-01_2018-03-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">0.42</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033141" contextRef="d_2018-04-01_2018-06-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">0.83</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033142" contextRef="d_2018-07-01_2018-09-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">1.12</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033143" contextRef="d_2018-10-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareBasic" scale="0">1.21</ix:nonFraction></td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033144" contextRef="d_2018-01-01_2018-03-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">0.42</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033145" contextRef="d_2018-04-01_2018-06-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">0.82</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033146" contextRef="d_2018-07-01_2018-09-30" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">1.11</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033147" contextRef="d_2018-10-01_2018-12-31" unitRef="USDPerShare" format="ixt:numdotdecimal" decimals="INF" name="us-gaap:EarningsPerShareDiluted" scale="0">1.20</ix:nonFraction></td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:continuation>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" id="c1434707" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">20.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Valuation and Qualifying Accounts</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017:</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="gnrc:ValuationAndQualifyingAccountsTableTextBlock" id="c1434708" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Balance at Beginning of Year</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Additions Charged to Earnings</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Charges to Reserve, Net (1)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Reserves Established for Acquisitions</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Balance at End of Year</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2019</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033153" contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">4,873</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033154" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">3,086</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033155" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" sign="-" scale="3">1,033</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033156" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">42</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033157" contextRef="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">6,968</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033158" contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">23,140</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033159" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">4,821</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033160" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" sign="-" scale="3">3,867</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033161" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">199</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033162" contextRef="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">24,293</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033163" contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">5,802</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033164" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033165" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033166" contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" sign="-" scale="3">778</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033167" contextRef="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">5,024</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2018</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033169" contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">4,805</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033170" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">1,941</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033171" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" sign="-" scale="3">2,123</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033172" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">250</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033173" contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">4,873</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033174" contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">15,987</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033175" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">10,004</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033176" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" sign="-" scale="3">3,720</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033177" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">869</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033178" contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-4" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">23,140</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033179" contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">6,817</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033180" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">478</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033181" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033182" contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" sign="-" scale="3">1,493</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033183" contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">5,802</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
       <td>&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2017</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033185" contextRef="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">5,642</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033186" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">346</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033187" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" sign="-" scale="3">1,842</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033188" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">659</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033189" contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">4,805</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033190" contextRef="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">13,031</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033191" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">6,164</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c56033192" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" sign="-" scale="3">4,036</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033193" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">828</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033194" contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">15,987</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033195" contextRef="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">4,362</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033196" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" scale="3">2,455</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033197" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033198" contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:zerodash" decimals="-3" name="gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" scale="3">-</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56033199" contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember" unitRef="USD" format="ixt:numdotdecimal" decimals="-3" name="us-gaap:ValuationAllowancesAndReservesBalance" scale="3">6,817</ix:nonFraction></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
      </tr>
     </tbody>
    </table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#xa0;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Deductions from the allowance for doubtful accounts equal accounts receivable written off against the allowance, less recoveries. Deductions from the reserves for inventory excess and obsolete items equal inventory written off against the reserve as items were disposed of.</p> </td>
     </tr>
    </tbody>
   </table>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2019-01-01_2019-12-31" name="us-gaap:SubsequentEventsTextBlock" id="c1434709" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">21.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Subsequent Events</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company performed an evaluation of subsequent events through the date these financial statements were issued and <em style="font-weight: inherit; font-style: normal;">no</em> such events were identified.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"></p><ix:exclude><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;">71</em>
    </div>
    <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
    <div class="PGHDR" style="text-align: left; width: 100%">
     <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a></div></div></ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGHDR" style="text-align: left; width: 100%"><a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt"></a>
    </div>
   </div>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item9" href=""></a>Item&#xa0;9. Changes in and Disagreements with Accountants</b><b> on Accounting and Financial Disclosure</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">There were no changes in, or disagreements with, accountants reportable herein.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item9a" href=""></a>Item&#xa0;9A. Controls and Procedures</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Evaluation of Disclosure Controls and Procedures</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Disclosure controls and procedures are controls and other procedures that are designed to ensure that information required to be disclosed by us in reports we file or submit under the Securities Exchange Act of 1934 (Exchange Act), is recorded, processed, summarized and reported within the time periods specified in the Securities and Exchange Commission rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that such information is accumulated and communicated to our management, including our Chief Executive Officer and Chief Financial Officer, as appropriate, to allow for timely decisions regarding required disclosure.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our management, with the participation of our Chief Executive Officer and our Chief Financial Officer, has conducted an evaluation of the design and operation of our disclosure controls and procedures as defined in Rule 13a-15(e) and 15d-15(e) under the Exchange Act as of the end of the period covered by this report on Form&#xa0;10-K. Based on that evaluation, our Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were effective in providing reasonable assurance that the information required to be disclosed in this report on Form 10-K has been recorded, processed, summarized and reported as of the end of the period covered by this report on Form 10-K.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Management&#x2019;s Report on Internal Control Over Financial Reporting</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Our management is responsible for establishing and maintaining adequate internal control over financial reporting, as defined in Rule 13a-15(f) and 15d-15(f) under the Exchange Act. Our internal control over financial reporting is designed under the supervision of our Chief Executive Officer and Chief Financial Officer to provide reasonable assurance regarding the reliability of financial reporting and the preparation of the consolidated financial statements in accordance with U.S. GAAP.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Internal control over financial reporting includes those policies and procedures that (i) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the Company; (ii) provide reasonable assurance that transactions are recorded as necessary to permit preparation of the financial statements in accordance with U.S. GAAP, and that receipts and expenditures of the Company are being made only in accordance with authorizations of management and directors of the Company; and (iii) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the Company&#x2019;s assets that could have a material effect on the Company&#x2019;s financial statements.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:18pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">There are inherent limitations to the effectiveness of any internal control over financial reporting, including the possibility of human error or the circumvention or overriding of the controls.&#xa0;Accordingly, even an effective internal control over financial reporting can provide only reasonable assurance of achieving its objective. Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate, because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;text-indent:18pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Under the supervision and with the participation of our Chief Executive Officer and Chief Financial Officer, our management conducted an assessment of the effectiveness of internal control over financial reporting as of December 31, 2019 based on the criteria established in the 2013 <i>Internal Control &#x2013; Integrated Framework</i>, issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO).&#xa0;Based on this assessment, our management has concluded that our internal control over financial reporting was effective as of December 31, 2019. In conducting this assessment, our management excluded Neurio Technology Inc., which was acquired in March 2019, and Pika Energy, Inc., which was acquired in April 2019, and whose financial statements constitute 5.0% and 2.8% of net and total assets, respectively, 0.4% of net sales, and (2.2)% of net income of the consolidated financial statement amounts as of and for the year ended December 31, 2019.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Deloitte &amp; Touche LLP, the Company&#x2019;s independent registered public accounting firm, issued an attestation report on the effectiveness of the Company&#x2019;s internal control over financial reporting as of December 31, 2019, which is included herein.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Changes in Internal Control Over Financial Reporting</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">There have been no changes in our internal control over financial reporting that occurred during the three months ended December 31, 2019 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.<b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     72
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item9b" href=""></a>Item&#xa0;9B. Other Information</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">None.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><a id="part3" href=""></a>PART III</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item10" href=""></a>Item&#xa0;10. Directors, Executive Officers and Corporate Governance</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The information required by Item 10 not already provided herein under &#x201c;Item 1 &#x2013; Business &#x2013; Information About Our Executive Officers&#x201d;, will be included in our 2020 Proxy Statement and is incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item11" href=""></a>Item&#xa0;11. Executive Compensation</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The information required by this item will be included in our 2020 Proxy Statement and is incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item12" href=""></a>Item&#xa0;12. Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The information required by this item, including under the heading &#x201c;Securities Authorized for Issuance Under Equity Compensation Plans,&#x201d; will be included in our 2020 Proxy Statement and is incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item13" href=""></a>Item&#xa0;13. Certain Relationships and Related Transactions, and Director Independence</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The information required by this item will be included in our 2020 Proxy Statement and is incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item14" href=""></a>Item&#xa0;14. Principal Accountant Fees and Servic</b><b>es</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The information required by this item will be included in our 2020 Proxy Statement and is incorporated herein by reference.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><a id="part4" href=""></a>PART IV</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item15" href=""></a>Item&#xa0;15. Exhibits and Financial Statement Schedules</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#xa0;</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>(a)(1) Financial Statements</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Included in Part&#xa0;II of this report:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:95.4%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:bottom;width:85.7%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 14.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Page</b></p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:top;width:85.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;"><a href="#auditor" style="-sec-extract:exhibit;">Reports of Independent Registered Public Accounting Firm</a></p> </td>
     <td style="vertical-align:bottom;width:14.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">37</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:top;width:85.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;"><a href="#bs" style="-sec-extract:exhibit;">Consolidated balance sheets as of December 31, 2019 and 2018</a></p> </td>
     <td style="vertical-align:bottom;width:14.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">40</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:top;width:85.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;"><a href="#compinc" style="-sec-extract:exhibit;">Consolidated statements of comprehensive income for years ended December 31, 2019, 2018 and 2017</a></p> </td>
     <td style="vertical-align:bottom;width:14.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">41</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:top;width:85.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;"><a href="#equity" style="-sec-extract:exhibit;">Consolidated statements of stockholders&#x2019; equity for years ended December 31, 2019, 2018 and 2017</a></p> </td>
     <td style="vertical-align:bottom;width:14.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">42</p> </td>
    </tr>
    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:top;width:85.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;"><a href="#cf" style="-sec-extract:exhibit;">Consolidated statements of cash flows for the years ended December 31, 2019, 2018 and 2017</a></p> </td>
     <td style="vertical-align:bottom;width:14.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">43</p> </td>
    </tr>
    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:top;width:85.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-10pt;"><a href="#notes" style="-sec-extract:exhibit;">Notes to consolidated financial statements</a></p> </td>
     <td style="vertical-align:bottom;width:14.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">44</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>(a)(2) Financial Statement Schedules</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">All financial statement schedules have been omitted, since the required information is not applicable or is not present in amounts sufficient to require submission of the schedule, or because the information required is included in the consolidated financial statements and notes thereto.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     73
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>(a)(3) Exhibits</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The below exhibits index is the list of the exhibits being filed or furnished with or incorporated by reference into this Annual Report on Form 10-K:</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td colspan="2" rowspan="1" style="vertical-align: bottom; width: 10%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Exhibits<br /> Number</b></p> </td>
     <td rowspan="1" style="vertical-align: bottom; width: 2%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 88%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Description</b></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">3.1</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746910002937/a2197602zex-3_1.htm" style="-sec-extract:exhibit;">Third Amended and Restated Certificate of Incorporation of Generac Holdings&#xa0;Inc. (incorporated by reference to Exhibit 3.1 of the Company&#x2019;s Annual Report on Form 10-K for the fiscal year ended December 31, 2009).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">3.2</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774916025339/ex3-1.htm" style="-sec-extract:exhibit;">Amended and Restated Bylaws of Generac Holdings Inc. (incorporated by reference to Exhibit 3.1 of the Company&#x2019;s Current Report on Form 8-K filed with the SEC on February 16, 2016).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">4.1</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746910000285/a2196063zex-4_1.htm" style="-sec-extract:exhibit;">Form of Common Stock Certificate (incorporated by reference to Exhibit 4.1 of the Registration Statement on Form S-1 filed with the SEC on January 25, 2010).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">4.2*</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_172898.htm" style="-sec-extract:exhibit;">Description of Securities</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.1</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465913046543/a13-14243_1ex10d2.htm" style="-sec-extract:exhibit;">Credit Agreement, Dated as of February 9, 2012, As Amended and Restated as of May 30, 2012, As Further Amended and Restated as of May 31, 2013, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent and Bank of America, N.A. and Goldman Sachs Bank USA, as syndication agent (incorporated by reference to Exhibit 10.2 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on June 4, 2013), as amended by the First Amendment dated as of May 18, 2015.</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.2</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774916041001/ex10-1.htm" style="-sec-extract:exhibit;">Replacement Term Loan Amendment dated as of November 2, 2016, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent, and the other agents named therein (incorporated by reference to Exhibit 10.1 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on November 3, 2016).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.3</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774917009034/ex10-1.htm" style="-sec-extract:exhibit;">2017 Replacement Term Loan Amendment dated as of May 11, 2017, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent, and the other agents named therein (incorporated by reference to Exhibit 10.1 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on May 15, 2017).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.4</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774917020473/ex_101827.htm" style="-sec-extract:exhibit;">2017-2 Replacement Term Loan Amendment dated as of December 8, 2017, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent, and the other agents named therein (incorporated by reference to Exhibit 10.1 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on December 11, 2017).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.5</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774918011755/ex_116401.htm" style="-sec-extract:exhibit;">2018 Replacement Term Loan Amendment, dated as of June 8, 2018, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent, and the other agents named therein (incorporated by reference to Exhibit 10.1 of the Current Report on Form 8-K filed with the SEC on June 14, 2018).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.6</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919024445/ex_167459.htm" style="-sec-extract:exhibit;">2019 Replacement Term Loan Amendment, dated as of December 13, 2019, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent, and the other agents named therein (incorporated by reference to Exhibit 10.1 of the Current Report on Form 8-K filed with the SEC on December 16, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.7</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465913046543/a13-14243_1ex10d1.htm" style="-sec-extract:exhibit;">Restatement Agreement, dated as of May 31, 2013, to that certain Credit Agreement, dated as of February 9, 2012, as amended and restated as of May 30, 2012, among Generac Power Systems, Inc., Generac Acquisition Corp., the lenders party thereto, JPMorgan Chase Bank, N.A., as Administrative Agent, and Bank of America, N.A. and Goldman Sachs Bank USA, as syndication agents (incorporated by reference to Exhibit 10.1 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on June 4, 2013).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.8</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465912041005/a12-13434_1ex10d2.htm" style="-sec-extract:exhibit;">Guarantee and Collateral Agreement, dated as of February 9, 2012, as amended and restated as of May 30, 2012, among Generac Holdings Inc., Generac Acquisition Corp., Generac Power Systems, Inc., certain subsidiaries of Generac Power Systems, Inc. and JPMorgan Chase Bank, N.A., as Administrative Agent (incorporated by reference to Exhibit 10.2 of the Company&#x2019;s Current Report on Form 8-K filed with the SEC on May 31, 2012).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.9</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465913046543/a13-14243_1ex10d3.htm" style="-sec-extract:exhibit;">First Amendment to Guarantee and Collateral Agreement dated as of May 31, 2013, among Generac Holdings Inc., Generac Acquisition Corp., Generac Power Systems, Inc., certain subsidiaries of Generac Power Systems, Inc. and JPMorgan Chase Bank, N.A., as Administrative Agent (incorporated by reference to Exhibit 10.3 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on June 4, 2013).</a></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     74
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; border-bottom: thin solid rgb(0, 0, 0);"><b>Exhibits<br /> Number</b></td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 88%; text-align: center; border-bottom: thin solid rgb(0, 0, 0);"><b>Description</b></td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.10</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465912041005/a12-13434_1ex10d3.htm" style="-sec-extract:exhibit;">Credit Agreement, dated as of May 30, 2012, among Generac Power Systems, Inc., its Domestic Subsidiaries listed as Borrowers on the signature pages thereto, Generac Acquisition Corp., the lenders party thereto, Bank of America, N.A. as Administrative Agent, JPMorgan Chase Bank, N.A. and Goldman Sachs Bank USA, as syndication agents, and Wells Fargo Bank, National Association, as Documentation Agent (incorporated by reference to Exhibit 10.3 of the Company&#x2019;s Current Report on Form 8-K filed with the SEC on May 31, 2012).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.11</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465913046543/a13-14243_1ex10d4.htm" style="-sec-extract:exhibit;">Amendment No. 1 dated as of May 31, 2013, among Generac Power Systems, Inc., its Domestic Subsidiaries listed as Borrowers on the signature pages thereto, Generac Acquisition Corp., the lenders party thereto, Bank of America, N.A. as Administrative Agent, JPMorgan Chase Bank, N.A. and Goldman Sachs Bank USA, as syndication agents, and Wells Fargo Bank, National Association, as Documentation Agent (incorporated by reference to Exhibit 10.4 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on June 4, 2013).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.12</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774915011443/ex10-1.htm" style="-sec-extract:exhibit;">Amendment No. 2 dated as of May 29, 2015, among Generac Power Systems, Inc., its Domestic Subsidiaries listed as Borrowers on the signature pages thereto, Generac Acquisition Corp., the lenders party thereto, Bank of America, N.A. as Administrative Agent, and the other agents named therein (incorporated by reference to Exhibit 10.1 of the Company&#x2019;s Current Report on Form 8-K filed with the SEC on June 1, 2015).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.13</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774918011755/ex_116402.htm" style="-sec-extract:exhibit;">Second Amended and Restated Credit Agreement, dated as of June 12, 2018, among Generac Power Systems, Inc., its Subsidiaries listed as Borrowers on the signature pages thereto, Generac Acquisition Corp., the lenders party thereto, Bank of America, N.A. as Administrative Agent, JPMorgan Chase Bank, N.A., as Syndication Agent, and Wells Fargo Bank, National Association, as Documentation Agent (incorporated by reference to Exhibit 10.2 of the Current Report on Form 8-K filed with the SEC on June 14, 2018).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.14</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465912041005/a12-13434_1ex10d4.htm" style="-sec-extract:exhibit;">Guarantee and Collateral Agreement, dated as of May 30, 2012, among Generac Holdings Inc., Generac Acquisition Corp., Generac Power Systems, Inc., certain subsidiaries of Generac Power Systems, Inc. and Bank of America, N.A., as Administrative Agent (incorporated by reference to Exhibit 10.4 of the Company&#x2019;s Current Report on Form 8-K filed with the SEC on May 31, 2012).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.15</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000110465913046543/a13-14243_1ex10d5.htm" style="-sec-extract:exhibit;">First Amendment to Guarantee and Collateral Agreement dated as of May 31, 2013, among Generac Holdings Inc., Generac Acquisition Corp., Generac Power Systems, Inc., certain subsidiaries of Generac Power Systems, Inc. and Bank of America, N.A., as Administrative Agent (incorporated by reference to Exhibit 10.5 to the Company&#x2019;s Current Report on Form 8-K filed with the SEC on June 4, 2013).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.16+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746909010795/a2195840zex-10_46.htm" style="-sec-extract:exhibit;">2009 Executive Management Incentive Compensation Program (incorporated by reference to Exhibit 10.46 of the Registration Statement on Form S-1 filed with the SEC on December 17, 2009).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.17+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746912004891/a2208974zdef14a.htm#la47301_appendix_a" style="-sec-extract:exhibit;">Generac Holdings Inc. Amended and Restated 2010 Equity Incentive Plan (incorporated by reference to Appendix A to the Definitive Proxy Statement on Schedule 14A of the Company filed with the SEC on April 27, 2012)</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.18+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746910000285/a2196063zex-10_63.htm" style="-sec-extract:exhibit;">Generac Holdings&#xa0;Inc. Annual Performance Bonus Plan (incorporated by reference to Exhibit 10.63 of the Registration Statement on Form S-1 filed with the SEC on January 25, 2010).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.19+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774915020022/ex10-1.htm" style="-sec-extract:exhibit;">Amended and Restated Employment Agreement, dated November 5, 2018, between Generac and Aaron Jagdfeld (incorporated by reference to Exhibit 10.1 of the Company&#x2019;s Quarterly Report on Form 10-Q filed with the SEC on November 6, 2018).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.20</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746909010392/a2195620zex-10_40.htm" style="-sec-extract:exhibit;">Form of Confidentiality, Non-Competition and Intellectual Property Agreement (incorporated by reference to Exhibit 10.40 of the Registration Statement on Form S-1 filed with the SEC on November 24, 2009).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.21+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746910000285/a2196063zex-10_45.htm" style="-sec-extract:exhibit;">Form of Nonqualified Stock Option Award Agreement (incorporated by reference to Exhibit 10.45 of the Registration Statement on Form S-1 filed with the SEC on January 25, 2010).</a></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     75
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; border-bottom: thin solid rgb(0, 0, 0);"><b>Exhibits<br /> Number</b></td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 88%; text-align: center; border-bottom: thin solid rgb(0, 0, 0);"><b>Description</b></td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.22+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000147473512000025/exh10_3.htm" style="-sec-extract:exhibit;">Amended Form of Restricted Stock Award Agreement pursuant to the 2010 Equity Incentive Plan (incorporated by reference to Exhibit 10.3 of the Quarterly Report on Form 10-Q filed with the SEC on May 8, 2012).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.23+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000147473512000025/exh10_4.htm" style="-sec-extract:exhibit;">Amended Form of Nonqualified Stock Option Award Agreement pursuant to the 2010 Equity Incentive Plan (incorporated by reference to Exhibit 10.4 of the Quarterly Report on Form 10-Q filed with the SEC on May 8, 2012).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.24+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000147473512000025/exh10_5.htm" style="-sec-extract:exhibit;">Amended Form of Restricted Stock Award Agreement with accelerated vesting pursuant to the 2010 Equity Incentive Plan (incorporated by reference to Exhibit 10.5 of the Quarterly Report on Form 10-Q filed with the SEC on May 8, 2012).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.25+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919003397/ex_135458.htm" style="-sec-extract:exhibit;">Amended Form of Nonqualified Stock Option Award Agreement pursuant to the 2010 Equity Incentive Plan&#xa0;(incorporated by reference to Exhibit 10.24 of the Annual Report on Form 10-K filed with the SEC on February 26, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.26+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919003397/ex_135459.htm" style="-sec-extract:exhibit;">Amended Form of Restricted Stock Award Agreement pursuant to the 2010 Equity Incentive Plan&#xa0;(incorporated by reference to Exhibit 10.25 of the Annual Report on Form 10-K filed with the SEC on February 26, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.27</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746910000097/a2195969zex-10_51.htm" style="-sec-extract:exhibit;">Form of Director Indemnification Agreement (incorporated by reference to Exhibit 10.51 of the Registration Statement on Form S-1 filed with the SEC on January 11, 2010).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.28</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746910000097/a2195969zex-10_52.htm" style="-sec-extract:exhibit;">Form of Officer Indemnification Agreement (incorporated by reference to Exhibit 10.52 of the Registration Statement on Form S-1 filed with the SEC on January 11, 2010).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">10.29+</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000147473514000015/exh10_1.htm" style="-sec-extract:exhibit;">Form of Performance Share Award Agreement (incorporated by reference to Exhibit 10.1 of the Quarterly Report on Form 10-Q filed with the SEC on May 8, 2014).</a></td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.30+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919003397/ex_135477.htm" style="-sec-extract:exhibit;">Amended Form of Performance Share Award Agreement pursuant to the 2010 Equity Incentive Plan (incorporated by reference to Exhibit 10.29 of the Annual Report on Form 10-K filed with the SEC on February 26, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.31*+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_173214.htm" style="-sec-extract:exhibit;">Generac Holdings Inc. Non-Employee Director Compensation Policy.</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.32+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774918019673/ex_128193.htm" style="-sec-extract:exhibit;">Generac Power Systems, Inc. Executive Change in Control Policy, effective November 5, 2018 (incorporated by reference to Exhibit 10.2 of the Quarterly Report on Form 10-Q filed with the SEC on November 6, 2018).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.33+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000104746919002640/a2238541zdef14a.htm" style="-sec-extract:exhibit;">Generac Holdings Inc. 2019 Equity Incentive Plan (incorporated by reference to Appendix A to the Definitive Proxy Statement on Schedule 14A of the Company filed with the SEC on April 26, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.34+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919021621/ex_160684.htm" style="-sec-extract:exhibit;">Form of Restricted Stock Award Agreement pursuant to the Generac Holdings Inc. 2019 Equity Incentive Plan (incorporated by reference to Exhibit 10.1 of the Quarterly Report on Form 10-Q filed with the SEC on November 5, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.35+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919021621/ex_160685.htm" style="-sec-extract:exhibit;">Form of Nonqualified Stock Option Award Agreement pursuant to the Generac Holdings Inc. 2019 Equity Incentive Plan&#xa0;(incorporated by reference to Exhibit 10.2 of the Quarterly Report on Form 10-Q filed with the SEC on November 5, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">10.36+</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="http://www.sec.gov/Archives/edgar/data/1474735/000143774919021621/ex_160686.htm" style="-sec-extract:exhibit;">Form of Performance Share Unit Award Agreement pursuant to the Generac Holdings Inc. 2019 Equity Incentive Plan (incorporated by reference to Exhibit 10.3 of the Quarterly Report on Form 10-Q filed with the SEC on November 5, 2019).</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">21.1*</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_172899.htm" style="-sec-extract:exhibit;">List of Subsidiaries of Generac Holdings&#xa0;Inc.</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">23.1*</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_172900.htm" style="-sec-extract:exhibit;">Consent of Deloitte &amp; Touche LLP, Independent Registered Public Accounting Firm.</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">31.1*</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_172901.htm" style="-sec-extract:exhibit;">Certification of Chief Executive Officer pursuant to Securities Exchange Act Rules&#xa0;13a-14(a) and 15d-14(a), pursuant to Section&#xa0;302 of the Sarbanes-Oxley Act of 2002.</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">31.2*</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_172902.htm" style="-sec-extract:exhibit;">Certification of Chief Financial Officer pursuant to Securities Exchange Act Rules&#xa0;13a-14(a) and 15d-14(a), pursuant to Section&#xa0;302 of the Sarbanes-Oxley Act of 2002.</a></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="margin: 0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     76
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; border-bottom: thin solid rgb(0, 0, 0);"><b>Exhibits<br /> Number</b></td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: bottom; width: 88%; text-align: center; border-bottom: thin solid rgb(0, 0, 0);"><b>Description</b></td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">32.1**</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><a href="ex_172903.htm" style="-sec-extract:exhibit;">Certification of Chief Executive Officer pursuant to 18 U.S.C. Section&#xa0;1350, as adopted by Section&#xa0;906 of the Sarbanes-Oxley Act of 2002.</a></p> </td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">32.2**</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"><a href="ex_172904.htm" style="-sec-extract:exhibit;">Certification of Chief Financial Officer pursuant to 18 U.S.C. Section&#xa0;1350, as adopted by Section&#xa0;906 of the Sarbanes-Oxley Act of 2002.</a></td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%; padding-left: 9pt;">101*</td>
     <td style="vertical-align: top; width: 2%; padding-left: 9pt;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">The following financial information from the Company&#x2019;s Annual Report on Form 10-K for the fiscal year ended December 31, 2019, filed with the SEC on February 25, 2020, formatted in Inline eXtensible Business Reporting Language (iXBRL): (i) Consolidated Balance Sheets at December 31, 2019 and December 31, 2018; (ii) Consolidated Statements of Comprehensive Income for the Fiscal Years Ended December 31, 2019, December 31, 2018 and December 31, 2017; (iii) Consolidated Statements of Stockholders' Equity for the Fiscal Years Ended December 31, 2019, December 31, 2018 and December 31, 2017; (iv) Consolidated Statements of Cash Flows for the Fiscal Years Ended December 31, 2019, December 31, 2018 and December 31, 2017; (v) Notes to Consolidated Financial Statements.</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;">&#xa0;</td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;">&#xa0;</td>
    </tr>
    <tr>
     <td colspan="2" style="vertical-align: top; width: 10%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt 0pt 0pt 9pt; text-align: left;">104</p> </td>
     <td style="vertical-align: top; width: 2%;">&#xa0;</td>
     <td style="vertical-align: top; width: 88%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Cover Page Interactive Data File (embedded within the inline XBRL document).</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">____________________________</p> <p style="margin: 0pt;">*&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; Filed herewith.</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:35.3pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-35.3pt;">**&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; Furnished herewith.</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:35pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:-35pt;">+&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; Indicates management contract or compensatory plan or arrangement.</p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><a id="item16" href=""></a>Item&#xa0;16</b><b>. </b><b>Form 10-K Summary</b></p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">None.</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     77
   </div>
   <hr />
   <div class="PGHDR" style="text-align: left; width: 100%">
    <a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt">Table of Contents</a>
   </div>
  </div>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>SIGNATURES</b></p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Pursuant to the requirements of Section&#xa0;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.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:top;width:50%;">&#xa0;</td>
     <td colspan="2" style="vertical-align:bottom;width:50%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;font-variant:small-caps;margin:0pt;text-align:left;"><span style="text-transform:uppercase;">Generac Holdings&#xa0;Inc.</span></p> </td>
    </tr>
    <tr>
     <td style="vertical-align:top;width:50%;">&#xa0;</td>
     <td colspan="2" style="vertical-align:bottom;width:50%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:top;width:50%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:4.7%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">By:</p> </td>
     <td style="vertical-align: bottom; width: 45.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">/s/ <span style="text-transform:uppercase;">Aaron Jagdfeld</span></p> </td>
    </tr>
    <tr>
     <td style="vertical-align:top;width:50%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:4.7%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:45.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Aaron Jagdfeld</p> </td>
    </tr>
    <tr>
     <td style="vertical-align:top;width:50%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:4.7%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:45.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><i>&#xa0;</i><i>Chairman, </i><i>President and Chief Executive Officer </i></p> </td>
    </tr>
   </tbody>
  </table>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Dated: February 25, 2020</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons and on behalf of the Registrant in the capacities and on the dates indicated.</p>
  <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;"><b><span style="text-decoration: underline; ">Signature</span></b></td>
     <td colspan="1" style="vertical-align: middle; width: 33.3%; text-align: center;"><b><span style="text-decoration: underline; ">Title</span></b></td>
     <td colspan="1" style="vertical-align: middle; width: 33.3%; text-align: center;"><b><span style="text-decoration: underline; ">Date</span></b></td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center; border-bottom: thin solid rgb(0, 0, 0);">/s/<span style="text-transform:uppercase;"> Aaron Jagdfeld</span></td>
     <td colspan="1" style="vertical-align: middle; width: 33.3%; text-align: center;">Chairman, President and Chief Executive</td>
     <td colspan="1" style="vertical-align: middle; width: 33.3%; text-align: center;">February 25, 2020</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">Aaron Jagdfeld</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Officer</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#xa0;</p> </td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ <span style="text-transform:uppercase;">York A. Ragen</span></p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Chief Financial Officer and</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">York A. Ragen</td>
     <td colspan="1" style="vertical-align: middle; width: 33.3%; text-align: center;">Chief Accounting Officer</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ <span style="text-transform:uppercase;">bennett morgan</span></p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Lead Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">Bennett Morgan</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ MARCIA J. AVEDON</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">Marcia J. Avedon</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ JOHN D. BOWLIN</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">John D. Bowlin</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ Robert D. Dixon</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">Robert D. Dixon</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ WILLIAM JENKINS</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">William Jenkins</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ <span style="text-transform:uppercase;">Andrew G. Lampereur</span></p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">Andrew G. Lampereur</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ <span style="text-transform:uppercase;">David A. Ramon</span></p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">David A. Ramon</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ KATHRYN ROEDEL</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align: middle; width: 33.3%; text-align: center;">Kathryn Roedel</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
    <tr>
     <td style="vertical-align:middle;border-bottom:solid 1px #000000;;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">/s/ DOMINICK ZARCONE</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Director</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">February 25, 2020</p> </td>
    </tr>
    <tr>
     <td style="vertical-align:middle;border-bottom: 1px #000000;;width:33.3%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:10pt;margin-right:0pt;margin-top:0pt;text-align:center;text-indent:-10pt;">Dominick Zarcone</p> </td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
     <td colspan="1" style="vertical-align:middle;width:33.3%;">&#xa0;</td>
    </tr>
   </tbody>
  </table>
  <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:right;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;">78</p>
 </body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-4.2
<SEQUENCE>2
<FILENAME>ex_172898.htm
<DESCRIPTION>EXHIBIT 4.2
<TEXT>
<html><head>
	<title>ex_172898.htm</title>

	<!-- Generated by ThunderDome Portal - 2/15/2020 3:25:49 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; padding:0in .1in;">
<p style="margin-bottom: 0px; text-align: right; margin-top: 0px"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"><b>Exhibit 4.2</b></font></p>

<p style="margin-bottom: 0px; text-align: left; margin-top: 0px"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>DESCRIPTION OF CAPITAL STOCK</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">The following is a description of the material terms of our capital stock. This summary does not purport to be complete and is qualified in its entirety by reference to the actual terms and provisions of our amended and restated certificate of incorporation and bylaws, copies of which are filed as exhibits to our most recent annual report on Form 10-K filed with the Securities and Exchange Commission, and to the Delaware General Corporation Act. Our common stock is our only class of securities registered under Section 12 of the Securities Exchange of 1934, as amended.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Authorized Capitalization</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our authorized capital stock consists of 500,000,000 shares of common stock, par value $0.01 per share, and 50,000,000 shares of preferred stock, par value $0.01 per share.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Common Stock</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">The holders of our common stock are entitled to the following rights.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Voting Rights</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Each share of common stock entitles the holder to one vote with respect to each matter presented to our stockholders on which the holders of common stock are entitled to vote. Directors are elected by a plurality of the votes of the shares present in person or by proxy at a stockholders meeting and voting for nominees in the election of directors, and holders of our common stock do not have cumulative voting rights. Except as otherwise provided in our amended and restated certificate of incorporation or required by law, all matters to be voted on by our stockholders other than the election of directors must be approved by a majority of the shares present in person or by proxy at the meeting and entitled to vote on the subject matter.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Dividend Rights</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Holders of common stock share equally in any dividend declared out of legally available funds by our board of directors, subject to any preferential rights of the holders of any outstanding preferred stock.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Liquidation Rights</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">In the event of any voluntary or involuntary liquidation, dissolution or winding up of our affairs, holders of our common stock would be entitled to share ratably in our assets that are legally available for distribution to stockholders after payment of liabilities. If we have any preferred stock outstanding at such time, holders of the preferred stock may be entitled to distribution and/or liquidation preferences. In either such case, we must pay the applicable distribution to the holders of our preferred stock before we may pay distributions to the holders of our common stock.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Other Rights</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our stockholders have no subscription, redemption or conversion privileges. Our common stock does not entitle its holders to preemptive rights for additional shares and does not have any sinking fund provisions. All of the outstanding shares of our common stock are fully paid and nonassessable. The rights, preferences and privileges of the holders of our common stock are subject to the rights of the holders of shares of any series of preferred stock that we may issue.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Preferred Stock</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our board of directors is authorized to provide for the issuance of preferred stock in one or more series and to fix the preferences, powers and relative, participating, optional or other special rights, and qualifications, limitations or restrictions thereof, including the dividend rate, conversion rights, voting rights, redemption rights and liquidation preference and to fix the number of shares to be included in any such series without any further vote or action by our stockholders. Any preferred stock so issued may rank senior to our common stock with respect to the payment of dividends or amounts upon liquidation, dissolution or winding up, or both. In addition, any such shares of preferred stock may have class or series voting rights. The issuance of preferred stock may have the effect of delaying, deferring or preventing a change in control of our company without further action by the stockholders and may adversely affect the voting and other rights of the holders of our common stock. Our board of directors has not authorized the issuance of any shares of preferred stock, and we have no agreements or current plans for the issuance of any shares of preferred stock.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGNUM" style="text-align: center; width: 100%">&nbsp;</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000">
<div class="PGHDR" style="text-align: left; width: 100%">&nbsp;</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Anti-takeover Effects of our Amended and Restated Certificate of Incorporation and Bylaws</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated certificate of incorporation and bylaws contain provisions that may delay, defer or discourage another party from acquiring control of us. These provisions, which are summarized below, discourage coercive takeover practices or inadequate takeover bids. These provisions are also designed to encourage persons seeking to acquire control of us to first negotiate with our board of directors, which we believe may result in an improvement of the terms of any such acquisition in favor of our stockholders. However, they also give our board the power to discourage acquisitions that some stockholders may favor.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Board Composition and Filling Vacancies</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">We have a classified board of directors. This may discourage third-party proxy contests, tender offers or attempts to obtain control of us even if such changes would be beneficial to us and our stockholders.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated certificate of incorporation provides that directors may be removed only for cause by the affirmative vote of the holders of a majority of the voting power of the outstanding shares of common stock entitled to vote. Furthermore, any vacancy on our board of directors, however occurring, including a vacancy resulting from an increase in the size of our board, may only be filled by the affirmative vote of a majority of our directors then in office even if less than a quorum.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>No Stockholder Action by Written Consent</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated certificate of incorporation provides that, subject to the rights of any holders of preferred stock to act by written consent instead of a meeting, stockholder action may be taken only at an annual meeting or special meeting of stockholders and may not be taken by written consent instead of a meeting, unless affiliates of CCMP Capital Advisors,&nbsp;LLC, or CCMP, own at least 50% of our outstanding common stock or the action to be taken by written consent of stockholders and the taking of this action by written consent has been expressly approved in advance by the board of directors.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Meetings of Stockholders</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated certificate of incorporation provides that only a majority of the members of our board of directors then in office or the Chief Executive Officer may call special meetings of the stockholders and only those matters set forth in the notice of the special meeting may be considered or acted upon at the special meeting of stockholders. Our amended and restated bylaws limit the business that may be conducted at an annual meeting of stockholders to those matters properly brought before the meeting.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Advance Notice Requirements</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated bylaws establish an advance notice procedure for stockholders to make nominations of candidates for election as directors or to bring other business before an annual meeting of our stockholders. The amended and restated bylaws provide that any stockholder wishing to nominate persons for election as directors at, or bring other business before, an annual meeting must deliver to our secretary a written notice of the stockholder&#8217;s intention to do so. To be timely, the stockholder&#8217;s notice must be delivered to or mailed and received by us not later than the 90th&nbsp;day nor earlier than the 120th&nbsp;day prior to the anniversary date of the preceding annual meeting, except that if the annual meeting is not within 30&nbsp;days before or 60&nbsp;days after such anniversary date, we must receive the notice not earlier than the 120th&nbsp;day prior to such annual meeting and not later than the 90th&nbsp;day prior to such annual meeting. If a public announcement of the date of such annual meeting is made fewer than 100&nbsp;days prior to the date of such annual meeting, then notice must be received by us no later than the tenth day following the public announcement of the date of the meeting. The notice must include the information specified in the amended and restated bylaws. These provisions may preclude stockholders from bringing matters before a meeting of stockholders or from making nominations for directors at a stockholders meeting.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGNUM" style="text-align: center; width: 100%">&nbsp;</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000">
<div class="PGHDR" style="text-align: left; width: 100%">&nbsp;</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Amendment to Bylaws and Certificate of Incorporation</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Any amendment to our amended and restated certificate of incorporation must first be approved by a majority of our board of directors and (i)&nbsp;if required by law, thereafter be approved by a majority of the outstanding shares entitled to vote on the amendment or (ii)&nbsp;if related to provisions regarding the classification of the board of directors, the removal of directors, stockholder action by written consent, the ability to call special meetings of stockholders, indemnification, corporate opportunities or the amendment of our bylaws or certificate of incorporation, thereafter be approved by 66<sup>2</sup>/3% of the outstanding shares entitled to vote on the amendment. Our amended and restated bylaws may be amended (x)&nbsp;by the affirmative vote of a majority of the directors then in office, subject to any limitations set forth in the amended and restated bylaws, without further stockholder action or (y)&nbsp;by the affirmative vote of at least 66<sup>2</sup>/3% of the outstanding shares entitled to vote on the amendment, without further action by our board of directors.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i><b>Authorized but Unissued Shares</b></i></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">The authorized but unissued shares of our common stock and our preferred stock are available for future issuance without any further vote or action by our stockholders. These additional shares may be utilized for a variety of corporate purposes, including future public offerings to raise additional capital, corporate acquisitions and employee benefit plans. The existence of authorized but unissued shares of our common stock and our preferred stock could render more difficult or discourage an attempt to obtain control over us by means of a proxy contest, tender offer, merger or otherwise.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Delaware Anti-takeover Statute</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated certificate of incorporation provides that the provisions of Section&nbsp;203 of the Delaware General Corporation Law, or the DGCL, which relate to business combinations with interested stockholders, do not apply to us. Section&nbsp;203 of the DGCL prohibits a publicly held Delaware corporation from engaging in a business combination transaction with an interested stockholder (a stockholder who owns more than 15% of the corporation&#8217;s common stock) for a period of three years after the interested stockholder became such unless the transaction fits within an applicable exemption, such as board approval of the business combination or the transaction that resulted in such stockholder becoming an interested stockholder.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Corporate Opportunities</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our amended and restated certificate of incorporation provides that CCMP and its affiliates have no obligation to offer us an opportunity to participate in business opportunities presented to CCMP or its respective affiliates even if the opportunity is one that we might reasonably have pursued (and therefore may be free to compete with us in the same business or similar businesses), and that neither CCMP nor its respective affiliates will be liable to us or our stockholders for breach of any duty by reason of any such activities unless, in the case of any person who is a director or officer of our company, such business opportunity is expressly offered to such director or officer in writing solely in his or her capacity as an officer or director of our company.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Listing</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">Our common stock is listed on the New York Stock Exchange under the symbol "GNRC."</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Transfer Agent and Registrar</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="background-color:#FFFFFF;font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:36pt;">The transfer agent and registrar for our common stock is Computershare Trust Company, N.A.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.31
<SEQUENCE>3
<FILENAME>ex_173214.htm
<DESCRIPTION>EXHIBIT 10.31
<TEXT>
<html><head>
	<title>ex_173214.htm</title>

	<!-- Generated by ThunderDome Portal - 2/18/2020 7:42:14 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; padding:0in .1in;">
<p style="margin-bottom: 0px; text-align: right; margin-top: 0px"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"><b>Exhibit 10.31</b></font></p>

<p style="margin-bottom: 0px; text-align: left; margin-top: 0px"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><b>Generac Holdings, Inc.</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:12pt;margin:0pt;text-align:center;"><b>Non-Employee Director Compensation Policy</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>&nbsp;</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">1.&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Purpose</u><u> and Scope</u>. The Board of Directors of Generac Holdings, Inc. (the &#8220;Company&#8221;), to reflect the current compensation practices of the Company as approved by the Board, has set forth the following policy describing the amounts and form in which Non-Employee Directors of the Company shall be paid for their service in such capacity. This policy is not intended to supersede or modify the Company&#8217;s 2019 Equity Incentive Plan (&#8220;Incentive Plan&#8221;). Any terms herein, which are not otherwise defined, shall be as defined in the Incentive Plan. To the extent any terms or conditions contained within this policy conflict with the Incentive Plan, the Incentive Plan shall be determinative and controlling.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">2.&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Eligibility</u>. Each Non-Employee Director shall be eligible to receive the compensation provided hereunder. Directors who are also employees of the Company, its subsidiaries or affiliates do not receive additional compensation for service as a Director, and shall not be eligible to receive any compensation contemplated herein.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">3.&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Retainer Fees</u>.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:21.6pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:28.8pt;">3.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <u>Quarterly Retainer Fees</u>. Each Non-Employee Director shall receive retainer fees in the amount of $22,500, whether in the form of cash or Shares (or otherwise permitted herein), that shall be made on a pro-rated quarterly basis commencing on the same date as the issuance of the Annual Stock Grant, and thereafter awarded following the second full business day after the date of the public disclosure of the Company&#8217;s financial results for each fiscal quarter (&#8220;Quarterly Retainer Fees&#8221;).</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:21.6pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:28.8pt;">3.2&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Additional Retainer Fees</u>. Each Non-Employee Director who is appointed to serve as a Committee Chair or as the Lead Director shall receive additional retainer fees, whether in the form of cash or Shares (or otherwise permitted herein), that shall be made on a pro-rated quarterly basis commencing on the same date as the issuance of the Annual Stock Grant, and thereafter awarded following the second full business day after the date of the public disclosure of the Company&#8217;s financial results for each fiscal quarter (&#8220;Additional Retainer Fees,&#8221; and together with Quarterly Retainer Fees the &#8220;Retainer Fees&#8221;). The amount of the Additional Retainer Fees shall be as follows:</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(a)&nbsp;&nbsp; &nbsp; &nbsp; The Chair of the Audit Committee shall be paid $5,000;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(b)&nbsp;&nbsp; &nbsp; &nbsp; The Chair of the Compensation Committee shall be paid $3,750;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(c)&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; The Chair of the Nominating and Governance Committee shall be paid $3,125; and</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(d)&nbsp;&nbsp; &nbsp; &nbsp; The Lead Director shall be paid $6,250.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGNUM" style="text-align: center; width: 100%">&nbsp;</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000">
<div class="PGHDR" style="text-align: left; width: 100%">&nbsp;</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">4.&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Annual Stock Grant</u>. Annually, on a pro-rated basis as applicable, each Non-Employee Director will receive an award of Shares in the amount of $125,000. Except as otherwise provided herein, such Annual Stock Grant will be issued in non-restricted Shares, which shall be fully vested on the date of the award grant. Unless otherwise specified by the Board, the Annual Stock Grant shall be awarded following the second full business day after the date of the public disclosure of the Company&#8217;s financial results for the first quarter of the fiscal year.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">5.&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Form of Award</u>. &nbsp;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(a)&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; Subject to the limitations otherwise set forth herein, each Non-Employee Director may choose to receive some or all of his or her Retainer Fees and Annual Stock Grant in (i) cash, (ii) vested Shares, or (iii) Deferred Stock Units (&#8220;DSU&#8221;).</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(b)&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; Any election regarding the form of payment as provided in Section 5(a) must be received by the Company, within the time period pre-determined by the Company, and in writing in accordance with the manner, form and guidelines established by the Company, as may be amended from time to time by the Board.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(c)&nbsp;&nbsp; &nbsp; &nbsp; To the extent a Non-Employee Director elects to receive all or a portion of his or her Retainer Fees or Annual Stock Grant in DSUs under Section 5(a)(iii), such DSUs shall be granted in accordance with, and subject to, the terms and conditions of the Company&#8217;s Deferred Stock Unit Plan for Non-Employee Directors effective April 1, 2017, and as may be amended.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:50.4pt;margin-right:0pt;margin-top:0pt;text-align:left;text-indent:36pt;">(d)&nbsp;&nbsp; &nbsp; &nbsp; Notwithstanding anything to the contrary herein, Non-Employee Directors may not elect to receive cash in lieu of Shares for the Annual Stock Grant unless he or she has met the stock ownership target requirements set forth in Section 7.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">6.&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <u>Reimbursement of Expenses</u>. The Company shall reimburse each Non-Employee Director for his or her reasonable business expenses incurred in connection with the performance of his or her duties, including reasonable travel and other expenses incurred by the Non-Employee Director to attend Board and Committee meetings. Each Non-Employee Director shall provide to the Company such receipts and other records related to such reimbursable expenses as the Company may require.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">7.&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; <u>Stock Ownership Target Requirements</u>. Non-Employee Directors must own, within five years of their initial election to the Board, Shares having a value equal to five times the amount of their Quarterly Retainer Fees. Stock ownership for purposes of these guidelines includes Shares and DSUs.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;text-indent:21.6pt;">8.&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; <u>Administration</u>. The Compensation Committee has the authority to construe, interpret, prescribe, amend and rescind rules relating to the administration of Non-Employee Director Compensation, as well as the power to delegate such authority to any officer of the Company or their designee.</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;">2</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>4
<FILENAME>ex_172899.htm
<DESCRIPTION>EXHIBIT 21.1
<TEXT>
<html><head>
	<title>ex_172899.htm</title>

	<!-- Generated by ThunderDome Portal - 2/15/2020 3:24:48 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding: 0in 0.1in; cursor: auto;">
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman; text-align: right;"><b>Exhibit 21.1</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>LISTING OF SUBSIDIARIES OF GENERAC HOLDINGS INC.</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">

		<tr>
			<td style="vertical-align: top; width: 40%; border-bottom: 1px solid rgb(0, 0, 0);"><b>Subsidiaries of the Registrant</b></td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%; border-bottom: 1px solid rgb(0, 0, 0);"><b>State or Other Jurisdiction of Incorporation</b></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Power Systems, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Wisconsin, U.S</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Mobile Products, LLC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Wisconsin, U.S</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Warehouse Development Group LLC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Wisconsin, U.S.</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Acquisition Corp.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Delaware, U.S</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">MAC, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Delaware, U.S</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">CHP Holdings, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Delaware, U.S.</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Country Home Products, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Delaware, U.S.&nbsp;&nbsp;</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Powermate, LLC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Delaware, U.S</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">MAC Holdings, LLC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">North Dakota, U.S</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Route 22A &amp; 1 Main LLC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">Vermont, U.S.</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">PR-NA Industries Inc.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Georgia, U.S.</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Motortech Americas LLC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">Louisiana, U.S.</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Holdings UK Ltd</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">United Kingdom</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Global UK Limited</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">United Kingdom</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Ottomotores Nominees Ltd.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">United Kingdom</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Mobile Products UK Ltd.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">United Kingdom</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac UK Limited</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">United Kingdom</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Racing Limited</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">United Kingdom</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Ottomotores S.A de C.V.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">Mexico</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Mexico, S.A. de C.V.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Mexico</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Selmec Equipos Industriales, S.A. de C.V.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Mexico</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Operadora Selmec, S.A. de C.V.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Mexico</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Servicios Administrativos Selmec, S.A. de C.V.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Mexico</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac do Brasil Ltda</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Brazil</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">GPR Brasil Equipamentos Ltda</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Brazil</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Mobile Products S.r.l</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">Italy</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Holdings Italy S.r.l.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Italy</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">PR Industrial S.r.l.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Italy</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Europe SAS</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">France</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Services &amp; Gestion France Sarl</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">France</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac GmbH</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Germany</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Motortech GmbH</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">Germany</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Iberica S.A.U.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Spain</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Sp. Z.o.o.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">Poland</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Motortech Polska Sp. Z.o.o.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Poland</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Caribe Srl</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Dominican Republic</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Asia PTE Ltd</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Singapore</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac Fu Lee Foshan Power Equipment Ltd</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">China</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Motortech Shanghai Co., Ltd.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">China</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Suzhou Generac Power Systems Co., Ltd</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">China</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">SC Pramac Generators S.r.l.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Romania</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pramac RUS Ltd</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Russia</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">PR Middle East Fze</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">UAE</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">PR Australia PTY Ltd</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Australia</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Captiva Energy Solutions Private Limited</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">India</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Neurio Technology ULC</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Canada</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Pika Energy, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Delaware, U.S.</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 40%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Generac Colombia S.A.S.</p>
			</td>
			<td style="vertical-align: top; width: 2%;">&nbsp;</td>
			<td style="vertical-align: top; width: 58%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Colombia</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>5
<FILENAME>ex_172900.htm
<DESCRIPTION>EXHIBIT 23.1
<TEXT>
<html><head>
	<title>ex_172900.htm</title>
	<!-- Generated by ThunderDome Portal - 2/24/2020 5:02:36 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; padding:0in .1in;">
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman; text-align: right;"><b>Exhibit 23.1</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>&nbsp;</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>Consent of Independent Registered Public Accounting Firm</b></p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">We consent to the incorporation by reference in Registration Statement Nos. 333-164851, 333-183109, 333-197944, and 333-233050 on Form S-8 and No.333-185136 on Form S-3 of our reports dated February 25, 2020, relating to the&nbsp;financial statements of Generac Holdings Inc.&nbsp;and the effectiveness of internal control over financial reporting (which report expresses an unqualified opinion) appearing in this Annual Report on Form 10-K of Generac Holdings&nbsp;Inc. for the year ended December 31, 2019.</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">/s/ Deloitte &amp; Touche LLP</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Milwaukee, Wisconsin</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">February 25, 2020</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&nbsp;</b></p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>6
<FILENAME>ex_172901.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<html><head>
	<title>ex_172901.htm</title>

	<!-- Generated by ThunderDome Portal - 2/15/2020 3:14:18 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; padding:0in .1in;">
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman; text-align: right;"><b>Exhibit 31.1</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>CERTIFICATION OF CHIEF EXECUTIVE OFFICER PURSUANT TO<br>
SECURITIES EXCHANGE ACT RULES 13a-14(a) AND 15d-14(a), AS ADOPTED<br>
PURSUANT TO SECTION&nbsp;302 OF THE SARBANES-OXLEY ACT OF&nbsp;2002</b><b>&nbsp;</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">I, Aaron Jagdfeld, certify that:</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">1.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">I have reviewed this annual report on Form&nbsp;10-K of Generac Holdings Inc.;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">2.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">3.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">4.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&nbsp;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:&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">a.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">b.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">c.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">d.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">5.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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):&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">a.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">b.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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.</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Date: February 25, 2020</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td colspan="3" style="vertical-align: top; width: 13%; border-bottom: thin solid rgb(0, 0, 0);">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">/s/ Aaron Jagdfeld</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 12%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Name:</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 42%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Aaron Jagdfeld</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 12%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Title:</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 42%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>Chairman, </i><i>President and Chief Executive Officer </i></p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>7
<FILENAME>ex_172902.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<html><head>
	<title>ex_172902.htm</title>

	<!-- Generated by ThunderDome Portal - 2/16/2020 12:20:44 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding: 0in 0.1in; cursor: auto;">
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman; text-align: right;"><b>Exhibit 31.2</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>CERTIFICATION OF CHIEF EXECUTIVE OFFICER PURSUANT TO<br>
SECURITIES EXCHANGE ACT RULES 13a-14(a) AND 15d-14(a), AS ADOPTED<br>
PURSUANT TO SECTION&nbsp;302 OF THE SARBANES-OXLEY ACT OF&nbsp;2002</b><b>&nbsp;</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">I, York A. Ragen, certify that:</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">1.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">I have reviewed this annual report on Form&nbsp;10-K of Generac Holdings Inc.;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">2.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">3.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">4.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&nbsp;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:&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">a.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">b.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">c.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">d.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">5.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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):&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">a.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and&nbsp;</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:54pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">b.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">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.</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Date: February 25, 2020</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td colspan="3" style="vertical-align: top; width: 13%; border-bottom: thin solid rgb(0, 0, 0);">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">/s/&nbsp;York A. Ragen</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 12%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Name:</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 42%;">York A. Ragen</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 12%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Title:</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 42%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>Chief Financial&nbsp;Officer </i></p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>8
<FILENAME>ex_172903.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<html><head>
	<title>ex_172903.htm</title>

	<!-- Generated by ThunderDome Portal - 2/15/2020 3:10:41 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding: 0in 0.1in; cursor: auto;">
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman; text-align: right;"><b>Exhibit&nbsp;32.1 </b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>CERTIFICATION OF THE CHIEF EXECUTIVE OFFICER<br>
PURSUANT TO 18 U.S.C. SECTION&nbsp;1350, AS ADOPTED<br>
BY SECTION&nbsp;906 OF THE SARBANES-OXLEY ACT OF&nbsp;2002 </b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pursuant to Section&nbsp;1350, Chapter&nbsp;63 of Title 18, United States Code, as adopted by Section&nbsp;906 of the Sarbanes-Oxley Act of 2002, the undersigned, as Chief Executive Officer of Generac Holdings Inc. (the &#8220;Company&#8221;), does hereby certify that to his knowledge:</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">1.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">the Company's annual report on Form&nbsp;10-K for the fiscal year ended December 31, 2019 fully complies with the requirements of Section&nbsp;13(a) or 15(d) of the Securities Exchange Act of 1934, as amended; and</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">2.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">the information contained in the Company's annual report on Form&nbsp;10-K for the fiscal year ended December 31, 2019 fairly presents, in all material respects, the financial condition and results of operations of the Company.</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Date: February 25, 2020</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td colspan="3" style="vertical-align: top; width: 13%; border-bottom: thin solid rgb(0, 0, 0);">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">/s/ Aaron Jagdfeld</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 12%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Name:</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 42%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Aaron Jagdfeld</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 43%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 12%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Title:</p>
			</td>
			<td style="vertical-align: top; width: 1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 42%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>Chairman, </i><i>President and Chief Executive Officer </i></p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>9
<FILENAME>ex_172904.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<html><head>
	<title>ex_172904.htm</title>

	<!-- Generated by ThunderDome Portal - 2/15/2020 3:10:56 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding: 0in 0.1in; cursor: auto;">
<p style="font-size: 10pt; margin: 0pt; font-family: Times New Roman; text-align: right;"><b>Exhibit&nbsp;32.2</b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b>CERTIFICATION OF THE CHIEF </b><b>FINANCIAL </b><b>OFFICER<br>
PURSUANT TO 18 U.S.C. SECTION&nbsp;1350, AS ADOPTED<br>
BY SECTION&nbsp;906 OF THE SARBANES-OXLEY ACT OF&nbsp;2002 </b></p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pursuant to Section&nbsp;1350, Chapter&nbsp;63 of Title 18, United States Code, as adopted by Section&nbsp;906 of the Sarbanes-Oxley Act of 2002, the undersigned, as Chief Financial Officer of Generac Holdings Inc. (the &#8220;Company&#8221;), does hereby certify that to his knowledge:</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">1.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">the Company's annual report on Form&nbsp;10-K for the fiscal year ended December 31, 2019 fully complies with the requirements of Section&nbsp;13(a) or 15(d) of the Securities Exchange Act of 1934, as amended; and</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="width:18pt;">&nbsp;</td>
			<td style="width:18pt;vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">2.</p>
			</td>
			<td style="vertical-align:top;">
			<p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;">the information contained in the Company's annual report on Form&nbsp;10-K for the fiscal year ended December 31, 2019 fairly presents, in all material respects, the financial condition and results of operations of the Company.</p>
			</td>
		</tr>

</table>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width:100%;text-indent:0;font-family:'Times New Roman', Times, serif;font-size:10pt;">

		<tr>
			<td style="vertical-align:top;width:43.3%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Date: February 25, 2020</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td colspan="3" style="vertical-align: top; width: 54.5%; border-bottom: thin solid rgb(0, 0, 0);">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">/s/ York A. Ragen</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:43.3%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:11.8%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Name:</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:41.6%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">York A. Ragen</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:43.3%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:11.8%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Title:</p>
			</td>
			<td style="vertical-align:top;width:1.1%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>
			</td>
			<td style="vertical-align:top;width:41.6%;">
			<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><i>Chief Financial Officer</i></p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&nbsp;</p>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">&nbsp;</p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>10
<FILENAME>gnrc-20191231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 09:07PM UTC 2020-02-25--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2017-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2018-01-31" xmlns:gnrc="http://www.generac.com/20191231" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2011-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:srt="http://fasb.org/srt/2019-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31" xmlns:us-types="http://fasb.org/us-types/2019-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.generac.com/20191231">
  <xsd:import namespace="http://xbrl.sec.gov/country/2017-01-31" schemaLocation="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/invest/2013-01-31" schemaLocation="http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/naics/2011-01-31" schemaLocation="http://xbrl.sec.gov/naics/2011/naics-2011-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2018-01-31" schemaLocation="https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/exch/2018-01-31" schemaLocation="https://xbrl.sec.gov/exch/2018/exch-2018-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/currency/2017-01-31" schemaLocation="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="gnrc-20191231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="gnrc-20191231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="gnrc-20191231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="gnrc-20191231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="statement-document-and-entity-information" roleURI="http://www.generac.com/20191231/role/statement-document-and-entity-information">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-balance-sheets" roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">001 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-balance-sheets-parentheticals" roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">002 - Statement - Consolidated Balance Sheets (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-comprehensive-income-" roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">003 - Statement - Consolidated Statements of Comprehensive Income</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-stockholders-equity" roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">004 - Statement - Consolidated Statements of Stockholders' Equity</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-stockholders-equity-parentheticals" roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">005 - Statement - Consolidated Statements of Stockholders' Equity (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-cash-flows" roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">006 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-description-of-business-" roleURI="http://www.generac.com/20191231/role/statement-note-1-description-of-business-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">007 - Disclosure - Note 1 - Description of Business</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-summary-of-accounting-policies" roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">008 - Disclosure - Note 2 - Summary of Accounting Policies</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-acquisitions" roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">009 - Disclosure - Note 3 - Acquisitions</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-redeemable-noncontrolling-interest" roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">010 - Disclosure - Note 4 - Redeemable Noncontrolling Interest</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-derivative-instruments-and-hedging-activities" roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">011 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-accumulated-other-comprehensive-loss" roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">012 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-segment-reporting" roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">013 - Disclosure - Note 7 - Segment Reporting</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-balance-sheet-details" roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">014 - Disclosure - Note 8 - Balance Sheet Details</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-goodwill-and-intangible-assets" roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">015 - Disclosure - Note 9 - Goodwill and Intangible Assets</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">016 - Disclosure - Note 10 - Leases</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">017 - Disclosure - Note 11 - Product Warranty Obligations</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-credit-agreements" roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">018 - Disclosure - Note 12 - Credit Agreements</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-stock-repurchase-program" roleURI="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">019 - Disclosure - Note 13 - Stock Repurchase Program</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-14-earnings-per-share" roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">020 - Disclosure - Note 14 - Earnings Per Share</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">021 - Disclosure - Note 15 - Income Taxes</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">022 - Disclosure - Note 16 - Benefit Plans</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-17-share-plans" roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">023 - Disclosure - Note 17 - Share Plans</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-18-commitments-and-contingencies" roleURI="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">024 - Disclosure - Note 18 - Commitments and Contingencies</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-19-quarterly-financial-information-unaudited" roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">025 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-20-valuation-and-qualifying-accounts" roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">026 - Disclosure - Note 20 - Valuation and Qualifying Accounts</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-21-subsequent-events" roleURI="http://www.generac.com/20191231/role/statement-note-21-subsequent-events">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">027 - Disclosure - Note 21 - Subsequent Events</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-significant-accounting-policies-policies" roleURI="http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">028 - Disclosure - Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-summary-of-accounting-policies-tables" roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">029 - Disclosure - Note 2 - Summary of Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-acquisitions-tables" roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">030 - Disclosure - Note 3 - Acquisitions (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-redeemable-noncontrolling-interest-tables" roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">031 - Disclosure - Note 4 - Redeemable Noncontrolling Interest (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-derivative-instruments-and-hedging-activities-tables" roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">032 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-accumulated-other-comprehensive-loss-tables" roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">033 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-segment-reporting-tables" roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">034 - Disclosure - Note 7 - Segment Reporting (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-balance-sheet-details-tables" roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">035 - Disclosure - Note 8 - Balance Sheet Details (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-goodwill-and-intangible-assets-tables" roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">036 - Disclosure - Note 9 - Goodwill and Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-tables" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">037 - Disclosure - Note 10 - Leases (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-tables" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">038 - Disclosure - Note 11 - Product Warranty Obligations (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-credit-agreements-tables" roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">039 - Disclosure - Note 12 - Credit Agreements (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-14-earnings-per-share-tables" roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">040 - Disclosure - Note 14 - Earnings Per Share (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes-tables" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">041 - Disclosure - Note 15 - Income Taxes (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-tables" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">042 - Disclosure - Note 16 - Benefit Plans (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-17-share-plans-tables" roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">043 - Disclosure - Note 17 - Share Plans (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-19-quarterly-financial-information-unaudited-tables" roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">044 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited) (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-20-valuation-and-qualifying-accounts-tables" roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">045 - Disclosure - Note 20 - Valuation and Qualifying Accounts (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-summary-of-accounting-policies-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">046 - Disclosure - Note 2 - Summary of Accounting Policies (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">047 - Disclosure - Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-acquisitions-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">048 - Disclosure - Note 3 - Acquisitions (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-acquisitions-preliminary-price-allocation-details" roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">049 - Disclosure - Note 3 - Acquisitions - Preliminary Price Allocation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-acquisitions-unaudited-pro-forma-information-details" roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">050 - Disclosure - Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-redeemable-noncontrolling-interest-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">051 - Disclosure - Note 4 - Redeemable Noncontrolling Interest (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">052 - Disclosure - Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-derivative-instruments-and-hedging-activities-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">053 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">054 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-accumulated-other-comprehensive-loss-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">055 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">056 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">057 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-segment-reporting-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">058 - Disclosure - Note 7 - Segment Reporting (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-segment-reporting-net-sales-by-products-and-services-details" roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">059 - Disclosure - Note 7 - Segment Reporting - Net Sales by Products and Services (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-segment-reporting-segment-information-details" roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">060 - Disclosure - Note 7 - Segment Reporting - Segment Information (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-segment-reporting-schedule-of-error-corrections-details" roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">061 - Disclosure - Note 7 - Segment Reporting- Schedule of Error Corrections (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-balance-sheet-details-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">062 - Disclosure - Note 8 - Balance Sheet Details (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-balance-sheet-details-inventories-details" roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">063 - Disclosure - Note 8 - Balance Sheet Details - Inventories (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-balance-sheet-details-property-and-equipment-details" roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">064 - Disclosure - Note 8 - Balance Sheet Details - Property and Equipment (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-goodwill-and-intangible-assets-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">065 - Disclosure - Note 9 - Goodwill and Intangible Assets (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">066 - Disclosure - Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">067 - Disclosure - Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">068 - Disclosure - Note 10 - Leases (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-leases-cost-details" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">069 - Disclosure - Note 10 - Leases - Leases Cost (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">070 - Disclosure - Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">071 - Disclosure - Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">072 - Disclosure - Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-leases-maturities-of-lease-liabilities-details" roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">073 - Disclosure - Note 10 - Leases - Maturities of Lease liabilities (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-1-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">074 - Disclosure - Note 11 - Product Warranty Obligations 1 (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-2-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">075 - Disclosure - Note 11 - Product Warranty Obligations 2 (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">076 - Disclosure - Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">077 - Disclosure - Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">078 - Disclosure - Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-product-warranty-obligations-deferred-product-obligations-details" roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">079 - Disclosure - Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-credit-agreements-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">080 - Disclosure - Note 12 - Credit Agreements (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-credit-agreements-shortterm-borrowings-details" roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">081 - Disclosure - Note 12 - Credit Agreements - Short-term Borrowings (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-credit-agreements-longterm-borrowings-details" roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">082 - Disclosure - Note 12 - Credit Agreements - Long-term Borrowings (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">083 - Disclosure - Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-stock-repurchase-program-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">084 - Disclosure - Note 13 - Stock Repurchase Program (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-14-earnings-per-share-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">085 - Disclosure - Note 14 - Earnings Per Share (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">086 - Disclosure - Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">087 - Disclosure - Note 15 - Income Taxes (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes-provision-for-income-taxes-details" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">088 - Disclosure - Note 15 - Income Taxes - Provision for Income Taxes (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">089 - Disclosure - Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes-unrecognized-tax-benefits-details" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">090 - Disclosure - Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">091 - Disclosure - Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">092 - Disclosure - Note 16 - Benefit Plans (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-accumulated-benefit-obligation-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">093 - Disclosure - Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">094 - Disclosure - Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">095 - Disclosure - Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">096 - Disclosure - Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">097 - Disclosure - Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">098 - Disclosure - Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">099 - Disclosure - Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-17-share-plans-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">100 - Disclosure - Note 17 - Share Plans (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">101 - Disclosure - Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-17-share-plans-summary-of-stock-option-activity-details" roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">102 - Disclosure - Note 17 - Share Plans - Summary of Stock Option Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">103 - Disclosure - Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-18-commitments-and-contingencies-details-textual" roleURI="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">104 - Disclosure - Note 18 - Commitments and Contingencies (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">105 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">106 - Disclosure - Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element abstract="true" id="gnrc_ABLRevolvingCreditFacilityMember" name="ABLRevolvingCreditFacilityMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_AdjustedEBITDA" name="AdjustedEBITDA" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_AdjustedLIBORRateMember" name="AdjustedLIBORRateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_AmendedABLFacilityMember" name="AmendedABLFacilityMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" name="AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" name="AmortizationOfFinancingCostsAndDebtDiscountPremium" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_AmountFinancedByDealers" name="AmountFinancedByDealers" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" name="AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" name="BusinessAcquisitionNoncontrollingInterestTermOfPutOption" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" name="BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_BusinessAcquisitionTermOfCallOption" name="BusinessAcquisitionTermOfCallOption" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" name="BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" name="BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" name="BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_BusinessOptimizationExpense" name="BusinessOptimizationExpense" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_CaptivaEnergySolutionsMember" name="CaptivaEnergySolutionsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ChangeInNoncontrollingInterestEquityImpact" name="ChangeInNoncontrollingInterestEquityImpact" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_CommercialAndIndustrialPowerProductsMember" name="CommercialAndIndustrialPowerProductsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" name="DeferredCompensationArrangementWithIndividualSharesGranted" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DeferredCompensationArrangementWithIndividualSharesVested" name="DeferredCompensationArrangementWithIndividualSharesVested" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" name="DeferredCostsAmortizationExpenseNextTwelveMonths" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_DeferredCostsAmortizationExpenseYearFive" name="DeferredCostsAmortizationExpenseYearFive" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_DeferredCostsAmortizationExpenseYearFour" name="DeferredCostsAmortizationExpenseYearFour" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_DeferredCostsAmortizationExpenseYearThree" name="DeferredCostsAmortizationExpenseYearThree" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_DeferredCostsAmortizationExpenseYearTwo" name="DeferredCostsAmortizationExpenseYearTwo" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" name="DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" name="DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" name="DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" name="DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" name="DefinedContributionPlanPercentageOfEligibleCompensation" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" name="DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" name="DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="gnrc_DiesAndToolsMember" name="DiesAndToolsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_DocumentAndEntityInformation" name="DocumentAndEntityInformation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_DomesticEquityMember" name="DomesticEquityMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_DomesticMember" name="DomesticMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" name="EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" name="EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_EmployerContributionUnderMedicalAndDentalPlan" name="EmployerContributionUnderMedicalAndDentalPlan" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_EquityAndRealEstateMember" name="EquityAndRealEstateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_EquityIncentivePlanPlanMember" name="EquityIncentivePlanPlanMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ExcessPurchasePriceOverPredecessorBasis" name="ExcessPurchasePriceOverPredecessorBasis" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" name="ExcessPurchasePriceOverPredecessorBasisMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ExtendedWarrantyTerm" name="ExtendedWarrantyTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" name="FinanceLeaseRightOfUseAssetAccumulatedDepreciation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_FinanceLeaseRightOfUseAssetGross" name="FinanceLeaseRightOfUseAssetGross" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_FiniteLivedCustomerListsNet" name="FiniteLivedCustomerListsNet" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_FiniteLivedPatentsAndTechnologyNet" name="FiniteLivedPatentsAndTechnologyNet" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="gnrc_InternationalEquityMember" name="InternationalEquityMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_InternationalMember" name="InternationalMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_LIBORFloorRateMember" name="LIBORFloorRateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_LeaseTermAndDiscountRateTableTextBlock" name="LeaseTermAndDiscountRateTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" name="LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" name="LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_NetDebtLeverageRatioThreshold" name="NetDebtLeverageRatioThreshold" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_NetDebtLeverageRatioThresholdMember" name="NetDebtLeverageRatioThresholdMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_NetIncomeLossAvailableToCommonStockholders" name="NetIncomeLossAvailableToCommonStockholders" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_NetPeriodicBenefitCostsMember" name="NetPeriodicBenefitCostsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_NeurioMember" name="NeurioMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_NoncashWritedownAndOtherAdjustments" name="NoncashWritedownAndOtherAdjustments" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_NoncontrollingInterestAgreementExtensionOfTerm" name="NoncontrollingInterestAgreementExtensionOfTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_NoteToFinancialStatementDetailsTextual" name="NoteToFinancialStatementDetailsTextual" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_NotesToFinancialStatements" name="NotesToFinancialStatements" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_NotesToFinancialStatementsAbstract" name="NotesToFinancialStatementsAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_NumberOfMajorCustomers" name="NumberOfMajorCustomers" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_NumberOfNewContractsEntered" name="NumberOfNewContractsEntered" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" name="OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OperatingLeaseAndOtherAssetsMember" name="OperatingLeaseAndOtherAssetsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" name="OperatingLeaseAndOtherLongtermLiabilitiesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" name="OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" name="OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_Other" name="Other" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" name="OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OtherAccruedLiabilitiesMember" name="OtherAccruedLiabilitiesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OtherInvestmentMember" name="OtherInvestmentMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OtherLinesOfCreditMember" name="OtherLinesOfCreditMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OtherNetMember" name="OtherNetMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_OtherProductsAndServicesMember" name="OtherProductsAndServicesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_PerformanceShareAwardPercentage" name="PerformanceShareAwardPercentage" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="gnrc_PikaMember" name="PikaMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_PramacMember" name="PramacMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" name="ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" name="PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_RedeemableNoncontrollingInterestMember" name="RedeemableNoncontrollingInterestMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_RedeemableNoncontrollingInterestTextBlock" name="RedeemableNoncontrollingInterestTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_ResidentialPowerProductsMember" name="ResidentialPowerProductsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_RestrictedStockAndPerformanceSharesMember" name="RestrictedStockAndPerformanceSharesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_SavingsPlan401kMember" name="SavingsPlan401kMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" name="ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" name="ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" name="ScheduleOfFairValueOfPlanAssetsTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" name="ScheduleOfIntangibleAssetsTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" name="ScheduleOfLeasesCashFlowInformationTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" name="SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_SecuredLeverageRatio" name="SecuredLeverageRatio" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_SelmecMember" name="SelmecMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" name="SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" nillable="true" substitutionGroup="xbrli:item" type="num:perShareItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" name="SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" name="SharesAcquiredUnderStockRepurchasesProgramShares" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" name="SharesAcquiredUnderStockRepurchasesProgramValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" name="StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" name="StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" name="TaxCreditCarryForwardStateResearchAndDevelopment" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_TaxCreditCarryforwardStateManufacturing" name="TaxCreditCarryforwardStateManufacturing" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_TemporaryEquityAcquired" name="TemporaryEquityAcquired" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_TermLoanMember" name="TermLoanMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_The2019EquityIncentivePlanMember" name="The2019EquityIncentivePlanMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_TradeNamesNet" name="TradeNamesNet" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_TransactionCostsAndCredityFaciltyFees" name="TransactionCostsAndCredityFaciltyFees" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="gnrc_UncommittedIncrementalTermLoanFacility" name="UncommittedIncrementalTermLoanFacility" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="gnrc_ValuationAndQualifyingAccountsTableTextBlock" name="ValuationAndQualifyingAccountsTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-10-leases-leases-cost-details" name="statement-statement-note-10-leases-leases-cost-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" name="statement-statement-note-10-leases-maturities-of-lease-liabilities-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" name="statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" name="statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-10-leases-tables" name="statement-statement-note-10-leases-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" name="statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" name="statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" name="statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" name="statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" name="statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-11-product-warranty-obligations-tables" name="statement-statement-note-11-product-warranty-obligations-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" name="statement-statement-note-12-credit-agreements-longterm-borrowings-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" name="statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" name="statement-statement-note-12-credit-agreements-shortterm-borrowings-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-12-credit-agreements-tables" name="statement-statement-note-12-credit-agreements-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" name="statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-14-earnings-per-share-tables" name="statement-statement-note-14-earnings-per-share-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" name="statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" name="statement-statement-note-15-income-taxes-provision-for-income-taxes-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" name="statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-15-income-taxes-tables" name="statement-statement-note-15-income-taxes-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" name="statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" name="statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" name="statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" name="statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" name="statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" name="statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-tables" name="statement-statement-note-16-benefit-plans-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" name="statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" name="statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" name="statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" name="statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-17-share-plans-tables" name="statement-statement-note-17-share-plans-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" name="statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" name="statement-statement-note-19-quarterly-financial-information-unaudited-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" name="statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" name="statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" name="statement-statement-note-2-summary-of-accounting-policies-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" name="statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" name="statement-statement-note-20-valuation-and-qualifying-accounts-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" name="statement-statement-note-3-acquisitions-preliminary-price-allocation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-3-acquisitions-tables" name="statement-statement-note-3-acquisitions-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" name="statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" name="statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" name="statement-statement-note-4-redeemable-noncontrolling-interest-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" name="statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" name="statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" name="statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" name="statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" name="statement-statement-note-6-accumulated-other-comprehensive-loss-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" name="statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" name="statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-7-segment-reporting-segment-information-details" name="statement-statement-note-7-segment-reporting-segment-information-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-7-segment-reporting-tables" name="statement-statement-note-7-segment-reporting-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" name="statement-statement-note-8-balance-sheet-details-inventories-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" name="statement-statement-note-8-balance-sheet-details-property-and-equipment-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-8-balance-sheet-details-tables" name="statement-statement-note-8-balance-sheet-details-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" name="statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" name="statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" name="statement-statement-note-9-goodwill-and-intangible-assets-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="gnrc_statement-statement-significant-accounting-policies-policies" name="statement-statement-significant-accounting-policies-policies" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>11
<FILENAME>gnrc-20191231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 09:08PM UTC 2020-02-25--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:type="arc"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-leases-cost-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_FinanceLeaseInterestExpense" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_OperatingLeaseCost" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetGross" xlink:label="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtAndCapitalLeaseObligations" xlink:label="us-gaap_DebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherBorrowings" xlink:label="us-gaap_OtherBorrowings" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DebtAndCapitalLeaseObligations" xlink:to="us-gaap_LineOfCredit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DebtAndCapitalLeaseObligations" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DebtAndCapitalLeaseObligations" xlink:to="us-gaap_DebtInstrumentCarryingAmount" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DebtAndCapitalLeaseObligations" xlink:to="us-gaap_OtherBorrowings" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DebtAndCapitalLeaseObligations" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="arc"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanInterestCost" xlink:label="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:label="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:label="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets" xlink:href="gnrc-20191231.xsd#statement-consolidated-balance-sheets" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedCustomerListsNet" xlink:label="gnrc_FiniteLivedCustomerListsNet" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:label="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:label="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:label="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TradeNamesNet" xlink:label="gnrc_TradeNamesNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="gnrc_TradeNamesNet" xlink:type="arc"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherIntangibleAssetsNet" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="arc"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="gnrc_FiniteLivedCustomerListsNet" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_ShortTermBorrowings" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_TreasuryStockValue" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_MinorityInterest" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-cash-flows" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:label="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:label="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromShortTermDebt" xlink:label="us-gaap_ProceedsFromShortTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:label="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfShortTermDebt" xlink:label="us-gaap_RepaymentsOfShortTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_OtherNoncashIncomeExpense" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_Depreciation" xlink:type="arc"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ProfitLoss" xlink:type="arc"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="arc"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" xlink:type="arc"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfShortTermDebt" xlink:type="arc"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="arc"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="arc"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:type="arc"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromShortTermDebt" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-comprehensive-income-" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="us-gaap_InvestmentIncomeNonoperating" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_GeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_SellingAndMarketingExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingExpenses" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InvestmentIncomeNonoperating" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_ProfitLoss" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ProfitLoss" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-inventories-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ExtendedProductWarrantyAccrual" xlink:to="us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ExtendedProductWarrantyAccrual" xlink:to="us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome" xlink:label="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="us-gaap_DeferredTaxAssetsInventory" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsOther" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsInventory" xlink:type="arc"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredTaxAssetsNet" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:label="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligation" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>12
<FILENAME>gnrc-20191231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 09:08PM UTC 2020-02-25--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-21-subsequent-events" xlink:href="gnrc-20191231.xsd#statement-note-21-subsequent-events" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-21-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SubsequentEventsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts" xlink:href="gnrc-20191231.xsd#statement-note-20-valuation-and-qualifying-accounts" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:label="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited" xlink:href="gnrc-20191231.xsd#statement-note-19-quarterly-financial-information-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-1-description-of-business-" xlink:href="gnrc-20191231.xsd#statement-note-1-description-of-business-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-1-description-of-business-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-document-and-entity-information" xlink:href="gnrc-20191231.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentAnnualReport" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" xlink:type="arc"/>
    <link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" xlink:type="arc"/>
    <link:definitionArc order="20" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
    <link:definitionArc order="21" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:definitionArc order="22" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
    <link:definitionArc order="23" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityWellKnownSeasonedIssuer" xlink:type="arc"/>
    <link:definitionArc order="24" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityVoluntaryFilers" xlink:type="arc"/>
    <link:definitionArc order="25" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" xlink:type="arc"/>
    <link:definitionArc order="26" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent" xlink:type="arc"/>
    <link:definitionArc order="27" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:definitionArc order="28" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" xlink:type="arc"/>
    <link:definitionArc order="29" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
    <link:definitionArc order="30" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany" xlink:type="arc"/>
    <link:definitionArc order="31" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityPublicFloat" xlink:type="arc"/>
    <link:definitionArc order="32" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals" xlink:href="gnrc-20191231.xsd#statement-consolidated-balance-sheets-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockShares" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-stockholders-equity-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NeurioMember" xlink:label="gnrc_NeurioMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PikaMember" xlink:label="gnrc_PikaMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_PikaMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_NeurioMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_SelmecMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CaptivaEnergySolutionsMember" xlink:label="gnrc_CaptivaEnergySolutionsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PramacMember" xlink:label="gnrc_PramacMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:label="gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_OwnershipAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_OwnershipDomain" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_OwnershipDomain" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherNetMember" xlink:label="gnrc_OtherNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="us-gaap_NondesignatedMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_CommodityContractMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_HedgingDesignationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_NondesignatedMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_ForeignExchangeContractMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="gnrc_OtherNetMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetAssetsGeographicAreaMember" xlink:label="us-gaap_NetAssetsGeographicAreaMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_GeographicConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_NetAssetsGeographicAreaMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:label="us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedLIBORRateMember" xlink:label="gnrc_AdjustedLIBORRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmendedABLFacilityMember" xlink:label="gnrc_AmendedABLFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LIBORFloorRateMember" xlink:label="gnrc_LIBORFloorRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThresholdMember" xlink:label="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_BaseRateMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="gnrc_AdjustedLIBORRateMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="gnrc_LIBORFloorRateMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gnrc_AmendedABLFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program" xlink:href="gnrc-20191231.xsd#statement-note-13-stock-repurchase-program" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="us-gaap_TreasuryStockTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_TreasuryStockTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityAndRealEstateMember" xlink:label="gnrc_EquityAndRealEstateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SavingsPlan401kMember" xlink:label="gnrc_SavingsPlan401kMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionPlansDefinedBenefitMember" xlink:label="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="gnrc_SavingsPlan401kMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="gnrc_EquityAndRealEstateMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityIncentivePlanPlanMember" xlink:label="gnrc_EquityIncentivePlanPlanMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RestrictedStockAndPerformanceSharesMember" xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_The2019EquityIncentivePlanMember" xlink:label="gnrc_The2019EquityIncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_BoardOfDirectorsChairmanMember" xlink:label="srt_BoardOfDirectorsChairmanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="gnrc_EquityIncentivePlanPlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="gnrc_The2019EquityIncentivePlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_BoardOfDirectorsChairmanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies" xlink:href="gnrc-20191231.xsd#statement-note-18-commitments-and-contingencies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies" xlink:href="gnrc-20191231.xsd#statement-significant-accounting-policies-policies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="us-gaap_ConcentrationRiskCreditRisk" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtPolicyTextBlock" xlink:label="us-gaap_DebtPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="us-gaap_DerivativesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="us-gaap_ReceivablesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PolicyTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConsolidationPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConcentrationRiskCreditRisk" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ReceivablesPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DebtPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DerivativesPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:label="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:label="us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:label="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:label="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-tables" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:label="gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:label="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:label="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:label="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:label="us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:label="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetPeriodicBenefitCostsMember" xlink:label="gnrc_NetPeriodicBenefitCostsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:label="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:label="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:label="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="gnrc_NetPeriodicBenefitCostsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-tables" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables" xlink:href="gnrc-20191231.xsd#statement-note-19-quarterly-financial-information-unaudited-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables" xlink:href="gnrc-20191231.xsd#statement-note-20-valuation-and-qualifying-accounts-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:label="gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:label="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:label="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NumberOfMajorCustomers" xlink:label="gnrc_NumberOfMajorCustomers" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="us-gaap_AdvertisingExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFairValue" xlink:label="us-gaap_DebtInstrumentFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:label="us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NumberOfMajorCustomers" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Depreciation" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerLiability" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdvertisingExpense" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebt" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentFairValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:label="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NeurioMember" xlink:label="gnrc_NeurioMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PikaMember" xlink:label="gnrc_PikaMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:label="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_PikaMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_NeurioMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_SelmecMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:label="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionTermOfCallOption" xlink:label="gnrc_BusinessAcquisitionTermOfCallOption" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CaptivaEnergySolutionsMember" xlink:label="gnrc_CaptivaEnergySolutionsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:label="gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PramacMember" xlink:label="gnrc_PramacMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_OwnershipAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_OwnershipDomain" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_OwnershipDomain" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessAcquisitionTermOfCallOption" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:label="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NumberOfNewContractsEntered" xlink:label="gnrc_NumberOfNewContractsEntered" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherNetMember" xlink:label="gnrc_OtherNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet" xlink:label="us-gaap_DerivativeGainLossOnDerivativeNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:label="us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeRemainingMaturity1" xlink:label="us-gaap_DerivativeRemainingMaturity1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="us-gaap_NondesignatedMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_CommodityContractMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_HedgingDesignationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_NondesignatedMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_ForeignExchangeContractMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="gnrc_OtherNetMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeRemainingMaturity1" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeGainLossOnDerivativeNet" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NumberOfNewContractsEntered" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetAssetsGeographicAreaMember" xlink:label="us-gaap_NetAssetsGeographicAreaMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_GeographicConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_NetAssetsGeographicAreaMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NumberOfReportableSegments" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:label="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:label="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:label="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="us-gaap_OperatingLeasesRentExpenseNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeasesRentExpenseNet" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-1-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExtendedWarrantyTerm" xlink:label="gnrc_ExtendedWarrantyTerm" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="us-gaap_CapitalizedContractCostAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_ExtendedWarrantyTerm" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CapitalizedContractCostNet" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CapitalizedContractCostAmortization" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-2-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedLIBORRateMember" xlink:label="gnrc_AdjustedLIBORRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmendedABLFacilityMember" xlink:label="gnrc_AmendedABLFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LIBORFloorRateMember" xlink:label="gnrc_LIBORFloorRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThreshold" xlink:label="gnrc_NetDebtLeverageRatioThreshold" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThresholdMember" xlink:label="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SecuredLeverageRatio" xlink:label="gnrc_SecuredLeverageRatio" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_UncommittedIncrementalTermLoanFacility" xlink:label="gnrc_UncommittedIncrementalTermLoanFacility" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFeeAmount" xlink:label="us-gaap_DebtInstrumentFeeAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="us-gaap_ProceedsFromLinesOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="us-gaap_RepaymentsOfLinesOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_BaseRateMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="gnrc_AdjustedLIBORRateMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="gnrc_LIBORFloorRateMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gnrc_AmendedABLFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_UncommittedIncrementalTermLoanFacility" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NetDebtLeverageRatioThreshold" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredFinanceCostsNet" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentFeeAmount" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SecuredLeverageRatio" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromLinesOfCredit" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RepaymentsOfLinesOfCredit" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCredit" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShortTermBorrowings" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-13-stock-repurchase-program-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:label="us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:label="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:label="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TaxCreditCarryforwardStateManufacturing" xlink:label="gnrc_TaxCreditCarryforwardStateManufacturing" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:label="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:label="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TaxCreditCarryforwardStateManufacturing" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:label="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:label="gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityAndRealEstateMember" xlink:label="gnrc_EquityAndRealEstateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SavingsPlan401kMember" xlink:label="gnrc_SavingsPlan401kMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="us-gaap_DefinedContributionPlanCostRecognized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionContributions" xlink:label="us-gaap_PensionContributions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionPlansDefinedBenefitMember" xlink:label="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="gnrc_SavingsPlan401kMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="gnrc_EquityAndRealEstateMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedContributionPlanCostRecognized" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PensionContributions" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityIncentivePlanPlanMember" xlink:label="gnrc_EquityIncentivePlanPlanMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PerformanceShareAwardPercentage" xlink:label="gnrc_PerformanceShareAwardPercentage" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RestrictedStockAndPerformanceSharesMember" xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_The2019EquityIncentivePlanMember" xlink:label="gnrc_The2019EquityIncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_BoardOfDirectorsChairmanMember" xlink:label="srt_BoardOfDirectorsChairmanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="gnrc_EquityIncentivePlanPlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="gnrc_The2019EquityIncentivePlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_BoardOfDirectorsChairmanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_PerformanceShareAwardPercentage" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-18-commitments-and-contingencies-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmountFinancedByDealers" xlink:label="gnrc_AmountFinancedByDealers" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AmountFinancedByDealers" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DiesAndToolsMember" xlink:label="gnrc_DiesAndToolsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandImprovementsMember" xlink:label="us-gaap_LandImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LandImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gnrc_DiesAndToolsMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_VehiclesMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_OfficeEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LeaseholdImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:label="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtNoncurrent" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gnrc_SelmecMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeNet" xlink:label="us-gaap_DerivativeFairValueOfDerivativeNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_CommodityContractMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_ForeignExchangeContractMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_InterestRateSwapMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeFairValueOfDerivativeNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillGross" xlink:label="us-gaap_GoodwillGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:label="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gnrc_DomesticMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gnrc_InternationalMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillGross" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherInvestmentMember" xlink:label="gnrc_OtherInvestmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MutualFundMember" xlink:label="us-gaap_MutualFundMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="us-gaap_MutualFundMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel1Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel3Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="gnrc_OtherInvestmentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RedeemableNoncontrollingInterestMember" xlink:label="gnrc_RedeemableNoncontrollingInterestMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TemporaryEquityAcquired" xlink:label="gnrc_TemporaryEquityAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:label="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityNetIncome" xlink:label="us-gaap_TemporaryEquityNetIncome" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="gnrc_RedeemableNoncontrollingInterestMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TemporaryEquityAcquired" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityNetIncome" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedEBITDA" xlink:label="gnrc_AdjustedEBITDA" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:label="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CommercialAndIndustrialPowerProductsMember" xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherProductsAndServicesMember" xlink:label="gnrc_OtherProductsAndServicesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ResidentialPowerProductsMember" xlink:label="gnrc_ResidentialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gnrc_ResidentialPowerProductsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:to="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gnrc_OtherProductsAndServicesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AdjustedEBITDA" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-leases-cost-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseCost" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseInterestExpense" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LeaseCost" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetGross" xlink:label="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseAndOtherAssetsMember" xlink:label="gnrc_OperatingLeaseAndOtherAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gnrc_OperatingLeaseAndOtherAssetsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gnrc_OtherAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:label="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeasePayments" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:label="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:label="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrual" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherLinesOfCreditMember" xlink:label="gnrc_OtherLinesOfCreditMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="us-gaap_ShortTermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="us-gaap_ShortTermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="us-gaap_ShortTermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ShortTermDebtTypeAxis" xlink:to="us-gaap_ShortTermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ShortTermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShortTermDebtTypeDomain" xlink:to="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ShortTermDebtTypeAxis" xlink:to="us-gaap_ShortTermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShortTermDebtTypeDomain" xlink:to="gnrc_OtherLinesOfCreditMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShortTermBorrowings" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtAndCapitalLeaseObligations" xlink:label="us-gaap_DebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherBorrowings" xlink:label="us-gaap_OtherBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCredit" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherBorrowings" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtAndCapitalLeaseObligations" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtCurrent" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="us-gaap_UnrecognizedTaxBenefits" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefits" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanInterestCost" xlink:label="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:label="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:label="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticEquityMember" xlink:label="gnrc_DomesticEquityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalEquityMember" xlink:label="gnrc_InternationalEquityMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:label="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FixedIncomeFundsMember" xlink:label="us-gaap_FixedIncomeFundsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RealEstateMember" xlink:label="us-gaap_RealEstateMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="us-gaap_FixedIncomeFundsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="gnrc_DomesticEquityMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="gnrc_InternationalEquityMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="us-gaap_RealEstateMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherInvestmentMember" xlink:label="gnrc_OtherInvestmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="gnrc_OtherInvestmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel3Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:href="gnrc-20191231.xsd#statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:href="gnrc-20191231.xsd#statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:label="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForCreditLossMember" xlink:label="us-gaap_AllowanceForCreditLossMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryValuationReserveMember" xlink:label="us-gaap_InventoryValuationReserveMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:label="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="us-gaap_ValuationAllowancesAndReservesBalance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:label="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="us-gaap_AllowanceForCreditLossMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="us-gaap_InventoryValuationReserveMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesBalance" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets" xlink:href="gnrc-20191231.xsd#statement-consolidated-balance-sheets" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedCustomerListsNet" xlink:label="gnrc_FiniteLivedCustomerListsNet" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:label="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:label="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:label="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TradeNamesNet" xlink:label="gnrc_TradeNamesNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_FiniteLivedCustomerListsNet" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OtherIntangibleAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_TradeNamesNet" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Assets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_ShortTermBorrowings" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_TreasuryStockValue" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_MinorityInterest" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-cash-flows" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:label="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:label="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromShortTermDebt" xlink:label="us-gaap_ProceedsFromShortTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:label="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfShortTermDebt" xlink:label="us-gaap_RepaymentsOfShortTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProfitLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_Depreciation" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_OtherNoncashIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromShortTermDebt" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfShortTermDebt" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-comprehensive-income-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="us-gaap_InvestmentIncomeNonoperating" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingExpensesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_SellingAndMarketingExpense" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_GeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpenses" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InvestmentIncomeNonoperating" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_ProfitLoss" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-stockholders-equity" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:label="gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:label="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:label="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ParentMember" xlink:label="us-gaap_ParentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_ParentMember" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_NoncontrollingInterestMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockSharesAcquired" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:type="arc"/>
    <link:definitionArc order="20" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProFormaMember" xlink:label="srt_ProFormaMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="srt_ProFormaMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CommercialAndIndustrialPowerProductsMember" xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherProductsAndServicesMember" xlink:label="gnrc_OtherProductsAndServicesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ResidentialPowerProductsMember" xlink:label="gnrc_ResidentialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gnrc_DomesticMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gnrc_ResidentialPowerProductsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gnrc_InternationalMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gnrc_OtherProductsAndServicesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-segment-information-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedEBITDA" xlink:label="gnrc_AdjustedEBITDA" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessOptimizationExpense" xlink:label="gnrc_BusinessOptimizationExpense" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:label="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoncashWritedownAndOtherAdjustments" xlink:label="gnrc_NoncashWritedownAndOtherAdjustments" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_Other" xlink:label="gnrc_Other" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TransactionCostsAndCredityFaciltyFees" xlink:label="gnrc_TransactionCostsAndCredityFaciltyFees" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gnrc_DomesticMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gnrc_InternationalMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AdjustedEBITDA" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NoncashWritedownAndOtherAdjustments" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TransactionCostsAndCredityFaciltyFees" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessOptimizationExpense" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_Other" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Assets" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-inventories-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DiesAndToolsMember" xlink:label="gnrc_DiesAndToolsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressMember" xlink:label="us-gaap_ConstructionInProgressMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandAndLandImprovementsMember" xlink:label="us-gaap_LandAndLandImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LandAndLandImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gnrc_DiesAndToolsMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_VehiclesMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_OfficeEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LeaseholdImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_ConstructionInProgressMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:label="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerListsMember" xlink:label="us-gaap_CustomerListsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedTradeNames" xlink:label="us-gaap_IndefiniteLivedTradeNames" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TradeNamesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerListsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_PatentsMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_DevelopedTechnologyRightsMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IndefiniteLivedTradeNames" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrual" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome" xlink:label="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="us-gaap_DeferredTaxAssetsInventory" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsInventory" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsOther" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilities" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:label="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:label="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:label="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:label="us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:label="us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:label="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanInterestCost" xlink:label="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligation" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>13
<FILENAME>gnrc-20191231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 09:07PM UTC 2020-02-25--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DocumentAndEntityInformation" xlink:label="gnrc_DocumentAndEntityInformation" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DocumentAndEntityInformation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document And Entity Information</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DocumentAndEntityInformation" xlink:to="gnrc_DocumentAndEntityInformation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet" xlink:label="us-gaap_DerivativeGainLossOnDerivativeNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeGainLossOnDerivativeNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DerivativeGainLossOnDerivativeNet</link:label>
    <link:label xlink:label="us-gaap_DerivativeGainLossOnDerivativeNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Gain (Loss) on Derivative, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeGainLossOnDerivativeNet" xlink:to="us-gaap_DerivativeGainLossOnDerivativeNet-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NoteToFinancialStatementDetailsTextual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note To Financial Statement Details Textual</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="gnrc_NoteToFinancialStatementDetailsTextual-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-significant-accounting-policies-policies" xlink:label="gnrc_statement-statement-significant-accounting-policies-policies" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-significant-accounting-policies-policies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-significant-accounting-policies-policies" xlink:to="gnrc_statement-statement-significant-accounting-policies-policies-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" xlink:label="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 2 - Summary of Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" xlink:to="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-3-acquisitions-tables" xlink:label="gnrc_statement-statement-note-3-acquisitions-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-3-acquisitions-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Acquisitions</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-3-acquisitions-tables" xlink:to="gnrc_statement-statement-note-3-acquisitions-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Risk free interest rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" xlink:label="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 4 - Redeemable Noncontrolling Interest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" xlink:to="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:label="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Derivative Instruments and Hedging Activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:to="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Accumulated Other Comprehensive Loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:to="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-tables" xlink:label="gnrc_statement-statement-note-7-segment-reporting-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-7-segment-reporting-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Segment Reporting</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-7-segment-reporting-tables" xlink:to="gnrc_statement-statement-note-7-segment-reporting-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-8-balance-sheet-details-tables" xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - Balance Sheet Details</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-8-balance-sheet-details-tables" xlink:to="gnrc_statement-statement-note-8-balance-sheet-details-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 9 - Goodwill and Intangible Assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" xlink:to="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-tables" xlink:label="gnrc_statement-statement-note-10-leases-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-10-leases-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-10-leases-tables" xlink:to="gnrc_statement-statement-note-10-leases-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-tables" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Product Warranty Obligations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-tables" xlink:to="gnrc_statement-statement-note-11-product-warranty-obligations-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-tables" xlink:label="gnrc_statement-statement-note-12-credit-agreements-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-12-credit-agreements-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 12 - Credit Agreements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-12-credit-agreements-tables" xlink:to="gnrc_statement-statement-note-12-credit-agreements-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-14-earnings-per-share-tables" xlink:label="gnrc_statement-statement-note-14-earnings-per-share-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-14-earnings-per-share-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 14 - Earnings Per Share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-14-earnings-per-share-tables" xlink:to="gnrc_statement-statement-note-14-earnings-per-share-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected stock price volatility</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-tables" xlink:label="gnrc_statement-statement-note-15-income-taxes-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-15-income-taxes-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 15 - Income Taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-15-income-taxes-tables" xlink:to="gnrc_statement-statement-note-15-income-taxes-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesCurrent</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-tables" xlink:label="gnrc_statement-statement-note-16-benefit-plans-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-tables" xlink:to="gnrc_statement-statement-note-16-benefit-plans-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-tables" xlink:label="gnrc_statement-statement-note-17-share-plans-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-17-share-plans-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 17 - Share Plans</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-17-share-plans-tables" xlink:to="gnrc_statement-statement-note-17-share-plans-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" xlink:label="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 19 - Quarterly Financial Information (Unaudited)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" xlink:to="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" xlink:label="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 20 - Valuation and Qualifying Accounts</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" xlink:to="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected life of options (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:label="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:to="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:label="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Acquisitions - Preliminary Price Allocation (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:to="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Pension liability adjustment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:label="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:to="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:label="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:to="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:label="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:to="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:to="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:to="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:label="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Segment Reporting - Net Sales by Products and Services (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:to="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeRemainingMaturity1" xlink:label="us-gaap_DerivativeRemainingMaturity1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeRemainingMaturity1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DerivativeRemainingMaturity1</link:label>
    <link:label xlink:label="us-gaap_DerivativeRemainingMaturity1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Remaining Maturity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeRemainingMaturity1" xlink:to="us-gaap_DerivativeRemainingMaturity1-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-segment-information-details" xlink:label="gnrc_statement-statement-note-7-segment-reporting-segment-information-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-7-segment-reporting-segment-information-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Segment Reporting - Segment Information (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-7-segment-reporting-segment-information-details" xlink:to="gnrc_statement-statement-note-7-segment-reporting-segment-information-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:label="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Segment Reporting- Schedule of Error Corrections (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:to="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - Balance Sheet Details - Inventories (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" xlink:to="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - Balance Sheet Details - Property and Equipment (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:to="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:to="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:label="us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeNumberOfInstrumentsHeld-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DerivativeNumberOfInstrumentsHeld</link:label>
    <link:label xlink:label="us-gaap_DerivativeNumberOfInstrumentsHeld-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Number of Instruments Held, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:to="us-gaap_DerivativeNumberOfInstrumentsHeld-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vested (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:to="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-leases-cost-details" xlink:label="gnrc_statement-statement-note-10-leases-leases-cost-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-10-leases-leases-cost-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Leases - Leases Cost (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-10-leases-leases-cost-details" xlink:to="gnrc_statement-statement-note-10-leases-leases-cost-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forfeited (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:label="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:to="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Non-vested (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Non-vested (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:label="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:to="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:label="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:to="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:label="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Leases - Maturities of Lease liabilities (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:to="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Non-vested (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Non-vested (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:to="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current portion of long-term borrowings and finance lease obligations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:to="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:to="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:to="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:label="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 12 - Credit Agreements - Short-term Borrowings (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:to="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Vested (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" xlink:label="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 12 - Credit Agreements - Long-term Borrowings (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" xlink:to="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:label="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:to="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Less: current portion of debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:label="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:to="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 15 - Income Taxes - Provision for Income Taxes (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:to="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:to="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:to="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeLossNetOfTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net current-period other comprehensive income (loss)</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:to="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, weighted average remaining contractual term (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), before Reclassifications, before Tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, aggregate intrinsic value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PikaMember" xlink:label="gnrc_PikaMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_PikaMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pika [Member]</link:label>
    <link:label xlink:label="gnrc_PikaMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Related to Pika.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_PikaMember" xlink:to="gnrc_PikaMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ForeignExchangeContractMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Exchange Contract [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignExchangeContractMember" xlink:to="us-gaap_ForeignExchangeContractMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax</link:label>
    <link:label xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reclassification from Accumulated Other Comprehensive Income, Current Period, before Tax</link:label>
    <link:label xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Amortization of net loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommodityContractMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commodity Contract [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommodityContractMember" xlink:to="us-gaap_CommodityContractMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss) before reclassifications</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:to="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax</link:label>
    <link:label xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amounts reclassified from AOCL</link:label>
    <link:label xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Amounts reclassified from AOCL</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:label="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:to="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:label="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 17 - Share Plans - Summary of Stock Option Activity (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:to="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, number of options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:label="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:to="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average remaining contractual term (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:label="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:to="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding, aggregate intrinsic value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:label="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:type="locator"/>
    <link:label xlink:label="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:to="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted average grant date fair value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatements" xlink:label="gnrc_NotesToFinancialStatements" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NotesToFinancialStatements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NotesToFinancialStatements" xlink:to="gnrc_NotesToFinancialStatements-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NotesToFinancialStatementsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="gnrc_NotesToFinancialStatementsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average exercise price (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forfeited, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted, weighted average exercise price (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercised, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued wages and employee benefits</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsPayableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, number of options (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, number of options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PolicyTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_PolicyTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</link:label>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Supplemental Balance Sheet Disclosures [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:to="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="us-gaap_TreasuryStockTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockTextBlock" xlink:to="us-gaap_TreasuryStockTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredIncomeTaxAssetsNet</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Assets, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CapitalizedContractCostNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CapitalizedContractCostNet</link:label>
    <link:label xlink:label="us-gaap_CapitalizedContractCostNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedContractCostNet" xlink:to="us-gaap_CapitalizedContractCostNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Error Corrections and Prior Period Adjustments [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:to="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments for Error Corrections [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments for Error Correction [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Description and Basis of Presentation [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders</link:label>
    <link:label xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Cash dividends paid to noncontrolling interest of subsidiary</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:to="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AwardTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, accumulated amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total intangible assets, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income attributable to noncontrolling interests</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedTradeNames" xlink:label="us-gaap_IndefiniteLivedTradeNames" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IndefiniteLivedTradeNames-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Indefinite-lived tradenames, gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedTradeNames" xlink:to="us-gaap_IndefiniteLivedTradeNames-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_NetIncomeLossAvailableToCommonStockholders</link:label>
    <link:label xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income attributable to common shareholders</link:label>
    <link:label xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Net income after adjustments for redeemable noncontrolling interest redemption value.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:to="gnrc_NetIncomeLossAvailableToCommonStockholders-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive income (loss) attributable to noncontrolling interests</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:label="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation</link:label>
    <link:label xlink:label="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Change in noncontrolling interest shares</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:to="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accumulated depreciation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:label="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Change in noncontrolling interest share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:to="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill, Ending Balance</link:label>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PropertyPlantAndEquipmentGross</link:label>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests</link:label>
    <link:label xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:to="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherNetMember" xlink:label="gnrc_OtherNetMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OtherNetMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other, Net [Member]</link:label>
    <link:label xlink:label="gnrc_OtherNetMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Related to the other, net income statement line item.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OtherNetMember" xlink:to="gnrc_OtherNetMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod</link:label>
    <link:label xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Performance Measurement, Period</link:label>
    <link:label xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Period of performance measurement for share-based compensation awards, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:to="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PramacMember" xlink:label="gnrc_PramacMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_PramacMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pramac [Member]</link:label>
    <link:label xlink:label="gnrc_PramacMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Pramac is a leading manufacturer of portable, commercial and industrial generators primarily sold under the Pramac brand, including PR Industrial S.r.1 and its subsidiaries.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_PramacMember" xlink:to="gnrc_PramacMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityNetIncome" xlink:label="us-gaap_TemporaryEquityNetIncome" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TemporaryEquityNetIncome-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TemporaryEquityNetIncome</link:label>
    <link:label xlink:label="us-gaap_TemporaryEquityNetIncome-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TemporaryEquityNetIncome" xlink:to="us-gaap_TemporaryEquityNetIncome-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:label="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation</link:label>
    <link:label xlink:label="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:to="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProfitLoss-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label xlink:label="us-gaap_ProfitLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProfitLoss</link:label>
    <link:label xlink:label="us-gaap_ProfitLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest</link:label>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total comprehensive income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:label="us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeasesOfLesseeDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leases of Lessee Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:to="us-gaap_LeasesOfLesseeDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeInstrumentRiskAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeInstrumentRiskAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeContractTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="us-gaap_DerivativeContractTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RedeemableNoncontrollingInterestMember" xlink:label="gnrc_RedeemableNoncontrollingInterestMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_RedeemableNoncontrollingInterestMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Redeemable Noncontrolling Interest [Member]</link:label>
    <link:label xlink:label="gnrc_RedeemableNoncontrollingInterestMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to redeemable noncontrolling interest.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_RedeemableNoncontrollingInterestMember" xlink:to="gnrc_RedeemableNoncontrollingInterestMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax impact</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Provision for income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TemporaryEquityAcquired" xlink:label="gnrc_TemporaryEquityAcquired" xlink:type="locator"/>
    <link:label xlink:label="gnrc_TemporaryEquityAcquired-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_TemporaryEquityAcquired</link:label>
    <link:label xlink:label="gnrc_TemporaryEquityAcquired-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Noncontrolling interest</link:label>
    <link:label xlink:label="gnrc_TemporaryEquityAcquired-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Increase in temporary equity from a business acquisition.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_TemporaryEquityAcquired" xlink:to="gnrc_TemporaryEquityAcquired-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="us-gaap_ShortTermDebtTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShortTermDebtTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Debt, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermDebtTypeAxis" xlink:to="us-gaap_ShortTermDebtTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="us-gaap_ShortTermDebtTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShortTermDebtTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Debt, Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermDebtTypeDomain" xlink:to="us-gaap_ShortTermDebtTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingExpenses-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingExpenses</link:label>
    <link:label xlink:label="us-gaap_OperatingExpenses-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total operating expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="us-gaap_DefinedContributionPlanCostRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedContributionPlanCostRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedContributionPlanCostRecognized</link:label>
    <link:label xlink:label="us-gaap_DefinedContributionPlanCostRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Cost</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanCostRecognized" xlink:to="us-gaap_DefinedContributionPlanCostRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GeneralAndAdministrativeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General and administrative</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch</link:label>
    <link:label xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair values of the Pension Plan's assets</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Plan Assets, Amount, Ending Balance</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:label="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanFundedStatusOfPlan-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanFundedStatusOfPlan</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanFundedStatusOfPlan-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Funded status: accrued pension liability included in other long-term liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:to="us-gaap_DefinedBenefitPlanFundedStatusOfPlan-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanBenefitObligation</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Projected benefit obligation at beginning of period</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Projected benefit obligation at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanBenefitObligation" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:label="us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanContributionsByEmployer-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Company contributions</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:to="us-gaap_DefinedBenefitPlanContributionsByEmployer-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:label xlink:label="dei_AmendmentFlag-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:label xlink:label="dei_CityAreaCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UseOfEstimates-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected long-term rate of return on plan assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_SharesAcquiredUnderStockRepurchasesProgramValue</link:label>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases</link:label>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Equity impact of the value of stock that has been repurchased during the period and are being held in treasury</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_SharesAcquiredUnderStockRepurchasesProgramShares</link:label>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares Acquired Under Stock Repurchases Program, Shares</link:label>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases (in shares)</link:label>
    <link:label xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of shares that have been repurchased during the period and are being held in treasury</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_CurrentFiscalYearEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discount Rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted average discount rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated benefit obligation at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:to="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalPeriodFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalYearFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConsolidationPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFileNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityEmergingGrowthCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss on extinguishment of debt</link:label>
    <link:label xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Extinguishment of Debt, Total</link:label>
    <link:label xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss on extinguishment of debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:label xlink:label="dei_EntitySmallBusiness-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Actual return on plan assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:to="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityShellCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Benefits paid</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityPublicFloat-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Public Float</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Benefits paid</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFilerCategory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCurrentReportingStatus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityVoluntaryFilers-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityWellKnownSeasonedIssuer-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:label="us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanActuarialGainLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanActuarialGainLoss</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanActuarialGainLoss-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Net actuarial (gain) loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:to="us-gaap_DefinedBenefitPlanActuarialGainLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Loss on pension settlement</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss on pension settlement</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Benefit Obligation, (Increase) Decrease for Settlement, Total</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss on pension settlement</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Loss on pension settlement (4)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskPercentage1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ConcentrationRiskPercentage1</link:label>
    <link:label xlink:label="us-gaap_ConcentrationRiskPercentage1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityTaxIdentificationNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCentralIndexKey-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityDomain" xlink:to="dei_EntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CustomerConcentrationRiskMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:label xlink:label="dei_LegalEntityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressAddressLine1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization of intangible assets</link:label>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of intangibles</link:label>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressCityOrTown-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GeographicConcentrationRiskMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographic Concentration Risk [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicConcentrationRiskMember" xlink:to="us-gaap_GeographicConcentrationRiskMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressPostalZipCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressStateOrProvince-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="us-gaap_AdvertisingExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdvertisingExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AdvertisingExpense</link:label>
    <link:label xlink:label="us-gaap_AdvertisingExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Advertising Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdvertisingExpense" xlink:to="us-gaap_AdvertisingExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SalesRevenueNetMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsReceivableMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetAssetsGeographicAreaMember" xlink:label="us-gaap_NetAssetsGeographicAreaMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetAssetsGeographicAreaMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Assets, Geographic Area [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetAssetsGeographicAreaMember" xlink:to="us-gaap_NetAssetsGeographicAreaMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:label xlink:label="dei_TradingSymbol-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_LocalPhoneNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TableTextBlock</link:label>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes Tables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_TableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset Category, Target</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Plan Assets, Target Allocation, Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:label="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset Category, Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:to="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:label="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net actuarial loss, net of tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:to="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SellingAndMarketingExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling and service</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpense" xlink:to="us-gaap_SellingAndMarketingExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Realized gains</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:to="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Raw material</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Purchases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Redemptions</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Work-in-process</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ResearchAndDevelopmentExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and development</link:label>
    <link:label xlink:label="us-gaap_ResearchAndDevelopmentExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MutualFundMember" xlink:label="us-gaap_MutualFundMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MutualFundMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Mutual Fund [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MutualFundMember" xlink:to="us-gaap_MutualFundMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FixedIncomeFundsMember" xlink:label="us-gaap_FixedIncomeFundsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FixedIncomeFundsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fixed Income Funds [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FixedIncomeFundsMember" xlink:to="us-gaap_FixedIncomeFundsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_InterestExpense</link:label>
    <link:label xlink:label="us-gaap_InterestExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Interest expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DisclosureTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes to Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Plan Assets, Category [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanAssetCategoriesDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Plan Assets, Category [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanAssetCategoriesDomain" xlink:to="us-gaap_PlanAssetCategoriesDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherIntangibleAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other intangible assets, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherIntangibleAssetsNet" xlink:to="us-gaap_OtherIntangibleAssetsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pension and Other Postretirement Benefits Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total intangible assets, gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SubsequentEventsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense</link:label>
    <link:label xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Compensation Arrangement with Individual, Compensation Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued</link:label>
    <link:label xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Compensation Arrangement with Individual, Shares Issued</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:label="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowance, Deferred Tax Asset [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:to="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Transactions and Translations Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, useful life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingExpensesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating expenses:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseRenewalTerm</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Renewal Term</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AssetsCurrent</link:label>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Advertising Cost [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:to="us-gaap_AdvertisingCostsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxAssetsValuationAllowance</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Valuation allowance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxAssetsNet</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deferred tax assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtPolicyTextBlock" xlink:label="us-gaap_DebtPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtPolicyTextBlock" xlink:to="us-gaap_DebtPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsOther-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOther" xlink:to="us-gaap_DeferredTaxAssetsOther-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredIncomeTaxLiabilities</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deferred tax liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:label="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet</link:label>
    <link:label xlink:label="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital Leases, Balance Sheet, Assets by Major Class, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:to="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome" xlink:label="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsDeferredIncome-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred revenue</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:to="us-gaap_DeferredTaxAssetsDeferredIncome-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="us-gaap_DeferredTaxAssetsInventory" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsInventory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxAssetsInventory</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsInventory-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsInventory" xlink:to="us-gaap_DeferredTaxAssetsInventory-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:label="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment</link:label>
    <link:label xlink:label="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Inventory, Materials, Supplies and Merchandise under Consignment, Gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:to="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property and equipment, estimated useful lives (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressMember" xlink:label="us-gaap_ConstructionInProgressMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConstructionInProgressMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Construction in Progress [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConstructionInProgressMember" xlink:to="us-gaap_ConstructionInProgressMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Bad debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:label="gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NoncontrollingInterestAgreementExtensionOfTerm-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_NoncontrollingInterestAgreementExtensionOfTerm</link:label>
    <link:label xlink:label="gnrc_NoncontrollingInterestAgreementExtensionOfTerm-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Noncontrolling Interest Agreement, Extension of Term</link:label>
    <link:label xlink:label="gnrc_NoncontrollingInterestAgreementExtensionOfTerm-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The extension of the term in the noncontrolling interest agreement.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:to="gnrc_NoncontrollingInterestAgreementExtensionOfTerm-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts receivable, allowance for doubtful accounts</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsReceivableNetCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts receivable, less allowance for doubtful accounts of $6,968 and $4,873 at December 31, 2019 and 2018, respectively</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NumberOfReportableSegments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NumberOfReportableSegments</link:label>
    <link:label xlink:label="us-gaap_NumberOfReportableSegments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfReportableSegments" xlink:to="us-gaap_NumberOfReportableSegments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BuildingAndBuildingImprovementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Building and Building Improvements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandAndLandImprovementsMember" xlink:label="us-gaap_LandAndLandImprovementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LandAndLandImprovementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Land and Land Improvements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandAndLandImprovementsMember" xlink:to="us-gaap_LandAndLandImprovementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pension obligations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandImprovementsMember" xlink:label="us-gaap_LandImprovementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LandImprovementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Land Improvements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandImprovementsMember" xlink:to="us-gaap_LandImprovementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseholdImprovementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_BoardOfDirectorsChairmanMember" xlink:label="srt_BoardOfDirectorsChairmanMember" xlink:type="locator"/>
    <link:label xlink:label="srt_BoardOfDirectorsChairmanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Board of Directors Chairman [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_BoardOfDirectorsChairmanMember" xlink:to="srt_BoardOfDirectorsChairmanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherNonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NonoperatingIncomeExpense</link:label>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total other expense, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SegmentReportingDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating loss and credit carryforwards</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInFinancingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in financing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="us-gaap_InvestmentIncomeNonoperating" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InvestmentIncomeNonoperating-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeNonoperating" xlink:to="us-gaap_InvestmentIncomeNonoperating-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating income</link:label>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income from operations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other (expense) income:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInInvestingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxLiabilities</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilities-label" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Net deferred tax liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effect of exchange rate changes on cash and cash equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:to="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease</link:label>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net increase in cash and cash equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and intangible assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BaseRateMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Base Rate [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BaseRateMember" xlink:to="us-gaap_BaseRateMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CostOfGoodsAndServicesSold-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Costs of goods sold</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="us-gaap_DerivativesPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativesPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivatives, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativesPolicyTextBlock" xlink:to="us-gaap_DerivativesPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt refinancing costs</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities</link:label>
    <link:label xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payment of contingent acquisition consideration</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="us-gaap_ConcentrationRiskCreditRisk" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskCreditRisk-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk, Credit Risk, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskCreditRisk" xlink:to="us-gaap_ConcentrationRiskCreditRisk-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payment, Tax Withholding, Share-based Payment Arrangement</link:label>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Taxes paid related to equity awards</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsOfDividendsCommonStock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsOfDividendsCommonStock</link:label>
    <link:label xlink:label="us-gaap_PaymentsOfDividendsCommonStock-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Cash dividends paid to noncontrolling interest of subsidiary</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProFormaMember" xlink:label="srt_ProFormaMember" xlink:type="locator"/>
    <link:label xlink:label="srt_ProFormaMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pro Forma [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProFormaMember" xlink:to="srt_ProFormaMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsForRepurchaseOfCommonStock</link:label>
    <link:label xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:label xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_ScenarioUnspecifiedDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="srt_ScenarioUnspecifiedDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from the exercise of stock options</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net sales</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_TitleOfIndividualAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_StatementScenarioAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_StatementScenarioAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CurrentForeignTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:to="us-gaap_CurrentForeignTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CurrentFederalTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RealEstateMember" xlink:label="us-gaap_RealEstateMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RealEstateMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Real Estate [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RealEstateMember" xlink:to="us-gaap_RealEstateMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CurrentIncomeTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</link:label>
    <link:label xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueRemainingPerformanceObligation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue performance obligation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ReclassificationFromAociCurrentPeriodTax</link:label>
    <link:label xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reclassification from AOCI, Current Period, Tax, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</link:label>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total before tax</link:label>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before provision for income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss) before Reclassifications, Tax, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reclassification out of Accumulated Other Comprehensive Income [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reclassification out of Accumulated Other Comprehensive Income [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reclassification out of Accumulated Other Comprehensive Income [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss) Note [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss):</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reclassification out of Accumulated Other Comprehensive Income [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsOfDebtIssuanceCosts</link:label>
    <link:label xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payment of debt issuance costs</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:to="us-gaap_PaymentsOfDebtIssuanceCosts-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfLongTermDebt</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repayments of Long-term Debt, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:label="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repayments of long-term borrowings and finance lease obligations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:to="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="us-gaap_ReceivablesPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReceivablesPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivable [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesPolicyTextBlock" xlink:to="us-gaap_ReceivablesPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="us-gaap_UnrecognizedTaxBenefits" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefits-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_UnrecognizedTaxBenefits</link:label>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefits-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Unrecognized tax benefit, beginning of period</link:label>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefits-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Unrecognized tax benefit, end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountingPoliciesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</link:label>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Statute of limitation expirations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities</link:label>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Settlements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption</link:label>
    <link:label xlink:label="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cumulative Effect of New Accounting Principle in Period of Adoption</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:to="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase in unrecognized tax benefit for positions taken in prior period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase in unrecognized tax benefit for positions taken in current period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from long-term borrowings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:to="us-gaap_ProceedsFromIssuanceOfLongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense</link:label>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:label="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense</link:label>
    <link:label xlink:label="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Interest on Income Taxes Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:to="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:type="locator"/>
    <link:label xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</link:label>
    <link:label xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Equity impact of the value of stock issued under equity incentive plans, net of shares withheld for employee taxes.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:to="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasisMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Excess Purchase Price over Predecessor Basis [Member]</link:label>
    <link:label xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasisMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The excess purchase price over predecessor basis.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasisMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfShortTermDebt" xlink:label="us-gaap_RepaymentsOfShortTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfShortTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfShortTermDebt</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfShortTermDebt-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repayments of short-term borrowings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfShortTermDebt" xlink:to="us-gaap_RepaymentsOfShortTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:type="locator"/>
    <link:label xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price (in shares)</link:label>
    <link:label xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of shares issued under equity incentive plans, net of shares withheld for employee taxes.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:to="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</link:label>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="us-gaap_RepaymentsOfLinesOfCredit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfLinesOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfLinesOfCredit</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfLinesOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repayments of Lines of Credit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLinesOfCredit" xlink:to="us-gaap_RepaymentsOfLinesOfCredit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted average common shares outstanding - diluted: (in shares)</link:label>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Diluted shares (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromShortTermDebt" xlink:label="us-gaap_ProceedsFromShortTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromShortTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from short-term borrowings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromShortTermDebt" xlink:to="us-gaap_ProceedsFromShortTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="us-gaap_ProceedsFromLinesOfCredit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromLinesOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProceedsFromLinesOfCredit</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromLinesOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Lines of Credit, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromLinesOfCredit" xlink:to="us-gaap_ProceedsFromLinesOfCredit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareDiluted-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income attributable to common shareholders per common share - diluted: (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_EarningsPerShareDiluted-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent</link:label>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted average common shares outstanding - basic: (in shares)</link:label>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average shares, basic (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments</link:label>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EffectiveIncomeTaxRateContinuingOperations</link:label>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Effective tax rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessAcquisitionAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Act impact (2)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income attributable to common shareholders per common share - basic: (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_EarningsPerShareBasic-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NumberOfMajorCustomers" xlink:label="gnrc_NumberOfMajorCustomers" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NumberOfMajorCustomers-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_NumberOfMajorCustomers</link:label>
    <link:label xlink:label="gnrc_NumberOfMajorCustomers-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of Major Customers</link:label>
    <link:label xlink:label="gnrc_NumberOfMajorCustomers-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents number of major customers that accounts for 10 percent or more of the entity's revenues.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NumberOfMajorCustomers" xlink:to="gnrc_NumberOfMajorCustomers-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:label="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium</link:label>
    <link:label xlink:label="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of Financing Costs and Debt Discount Premium</link:label>
    <link:label xlink:label="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of non-cash expense included in interest expense to issue and amortize debt discount and obtain financing associated with the related debt instruments.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:to="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfCashFlowsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCostsAmortizationExpenseYearTwo</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Costs Amortization Expense, Year Two</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of amortization expense expected to be recognized during the second fiscal year following the latest fiscal year for deferred costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:label="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Costs Amortization Expense, Next Twelve Months</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of amortization expense expected to be recognized during the next fiscal year following the latest fiscal year for deferred costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:to="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCostsAmortizationExpenseYearFour</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFour-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Costs Amortization Expense, Year Four</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFour-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of amortization expense expected to be recognized during the fourth fiscal year following the latest fiscal year for deferred costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfStockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCostsAmortizationExpenseYearThree</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearThree-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Costs Amortization Expense, Year Three</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearThree-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of amortization expense expected to be recognized during the third fiscal year following the latest fiscal year for deferred costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFive-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCostsAmortizationExpenseYearFive</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFive-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Costs Amortization Expense, Year Five</link:label>
    <link:label xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFive-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of amortization expense expected to be recognized during the fifth fiscal year following the latest fiscal year for deferred costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearFive-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseInterestExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest on lease liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseInterestExpense" xlink:to="us-gaap_FinanceLeaseInterestExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:label="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property Plant and Equipment, Estimated Useful Lives [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure for the useful life of long-lived, physical assets used in the normal conduct of business and not intended for resale.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:to="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDue</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total minimum lease payments, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:to="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of ROU assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">After 2023, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Interest component</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Liabilities Arising from Contingencies, Other Fair Value Re-measurement Adjustments</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the other fair Value re-measurement adjustments related to liabilities arising from contingencies in a business acquisition.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Liabilities Arising from Contingencies, Interest Accretion</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the interest accretion related to liabilities arising from contingencies in a business acquisition.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Liabilities Arising from Contingencies, Changes in Fair Value</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the changes in fair value of liabilities arising from contingencies in a business acquisition.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionTermOfCallOption" xlink:label="gnrc_BusinessAcquisitionTermOfCallOption" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessAcquisitionTermOfCallOption-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessAcquisitionTermOfCallOption</link:label>
    <link:label xlink:label="gnrc_BusinessAcquisitionTermOfCallOption-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Term of Call Option</link:label>
    <link:label xlink:label="gnrc_BusinessAcquisitionTermOfCallOption-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The term of call option available to the company in a business acquisition transaction.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessAcquisitionTermOfCallOption" xlink:to="gnrc_BusinessAcquisitionTermOfCallOption-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CaptivaEnergySolutionsMember" xlink:label="gnrc_CaptivaEnergySolutionsMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_CaptivaEnergySolutionsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Captiva Energy Solutions [Member]</link:label>
    <link:label xlink:label="gnrc_CaptivaEnergySolutionsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information about Captiva Energy Solutions.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_CaptivaEnergySolutionsMember" xlink:to="gnrc_CaptivaEnergySolutionsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_The2019EquityIncentivePlanMember" xlink:label="gnrc_The2019EquityIncentivePlanMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_The2019EquityIncentivePlanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">The 2019 Equity Incentive Plan [Member]</link:label>
    <link:label xlink:label="gnrc_The2019EquityIncentivePlanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information related to the 2019 Equity Incentive Plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_The2019EquityIncentivePlanMember" xlink:to="gnrc_The2019EquityIncentivePlanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued wages and employee benefits</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of accrued wages and employee benefits due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance Leases (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch</link:label>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Research and development credits</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SecuredLeverageRatio" xlink:label="gnrc_SecuredLeverageRatio" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SecuredLeverageRatio-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_SecuredLeverageRatio</link:label>
    <link:label xlink:label="gnrc_SecuredLeverageRatio-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Secured Leverage Ratio</link:label>
    <link:label xlink:label="gnrc_SecuredLeverageRatio-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Ratio used to calculate financial leverage and the ability to meet financial obligations. If the borrower's actual secured leverage ratio is below the 3.75 threshold for the annual period, the Excess Cash Flow payment requirement for that period is eliminated.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SecuredLeverageRatio" xlink:to="gnrc_SecuredLeverageRatio-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">U.S. statutory rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Change in valuation allowance</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:label="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased</link:label>
    <link:label xlink:label="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Annuities purchased</link:label>
    <link:label xlink:label="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of decrease in plan assets of defined benefit plan from annuities purchased.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:to="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:label="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Liabilities Arising from Contingencies, Amount Recognized</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:to="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:label="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased</link:label>
    <link:label xlink:label="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Annuities purchased</link:label>
    <link:label xlink:label="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of decrease in benefit obligation of defined benefit plan from annuities purchased.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:to="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:label="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="locator"/>
    <link:label xlink:label="gnrc_FiniteLivedPatentsAndTechnologyNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Patents and technology, net</link:label>
    <link:label xlink:label="gnrc_FiniteLivedPatentsAndTechnologyNet-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the carrying amount of finite-lived patents and technology as of balance sheet date.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:to="gnrc_FiniteLivedPatentsAndTechnologyNet-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:label="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Weighted Average Assumptions Used in Calculating Benefit Obligation [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of weighted average assumptions used in calculating benefit obligation.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:to="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:label="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amounts Adjusted from the Domestic Segment to the International Segment [Member]</link:label>
    <link:label xlink:label="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents amounts adjusted from the domestic segment to the international segment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:to="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="locator"/>
    <link:label xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State tax rate differential</link:label>
    <link:label xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net assets acquired</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired, Total</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Acquisition of business, net of cash acquired</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementClassOfStockAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other accrued liabilities</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DomesticMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Domestic [Member]</link:label>
    <link:label xlink:label="gnrc_DomesticMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information regarding domestic reportable segment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DomesticMember" xlink:to="gnrc_DomesticMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_InternationalMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">International [Member]</link:label>
    <link:label xlink:label="gnrc_InternationalMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information regarding international reportable segment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_InternationalMember" xlink:to="gnrc_InternationalMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:label="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ScheduleOfIntangibleAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Intangible Assets [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ScheduleOfIntangibleAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of intangible assets, by major asset class.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:to="gnrc_ScheduleOfIntangibleAssetsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="us-gaap_NondesignatedMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NondesignatedMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Not Designated as Hedging Instrument [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NondesignatedMember" xlink:to="us-gaap_NondesignatedMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetPeriodicBenefitCostsMember" xlink:label="gnrc_NetPeriodicBenefitCostsMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NetPeriodicBenefitCostsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net periodic Benefit Costs [Member]</link:label>
    <link:label xlink:label="gnrc_NetPeriodicBenefitCostsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The type or description of the periodic benefit costs associated with the defined benefit plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NetPeriodicBenefitCostsMember" xlink:to="gnrc_NetPeriodicBenefitCostsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:label="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from beneficial interest in securitization transactions</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:to="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expense and other assets</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_HedgingDesignationAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedEBITDA" xlink:label="gnrc_AdjustedEBITDA" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AdjustedEBITDA-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjusted EBITDA</link:label>
    <link:label xlink:label="gnrc_AdjustedEBITDA-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total adjusted EBITDA</link:label>
    <link:label xlink:label="gnrc_AdjustedEBITDA-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents net income before interest expense, taxes, depreciation and amortization, as further adjusted for other non-cash items</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AdjustedEBITDA" xlink:to="gnrc_AdjustedEBITDA-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_HedgingDesignationDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_HedgingDesignationDomain" xlink:to="us-gaap_HedgingDesignationDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Maturities of Long-term Debt [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Net Gain (Loss) from Cash Flow Hedges Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessOptimizationExpense" xlink:label="gnrc_BusinessOptimizationExpense" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessOptimizationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessOptimizationExpense</link:label>
    <link:label xlink:label="gnrc_BusinessOptimizationExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Business optimization expenses (6)</link:label>
    <link:label xlink:label="gnrc_BusinessOptimizationExpense-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents charges relating to business optimization and restructuring costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessOptimizationExpense" xlink:to="gnrc_BusinessOptimizationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_Other" xlink:label="gnrc_Other" xlink:type="locator"/>
    <link:label xlink:label="gnrc_Other-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_Other</link:label>
    <link:label xlink:label="gnrc_Other-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label xlink:label="gnrc_Other-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents other non-cash items that are not categorized separately.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_Other" xlink:to="gnrc_Other-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TransactionCostsAndCredityFaciltyFees" xlink:label="gnrc_TransactionCostsAndCredityFaciltyFees" xlink:type="locator"/>
    <link:label xlink:label="gnrc_TransactionCostsAndCredityFaciltyFees-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_TransactionCostsAndCredityFaciltyFees</link:label>
    <link:label xlink:label="gnrc_TransactionCostsAndCredityFaciltyFees-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Transaction costs and credit facility fees (5)</link:label>
    <link:label xlink:label="gnrc_TransactionCostsAndCredityFaciltyFees-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement; equity issuance, debt issuance or refinancing; together with certain fees relating to our senior secured credit facilities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_TransactionCostsAndCredityFaciltyFees" xlink:to="gnrc_TransactionCostsAndCredityFaciltyFees-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoncashWritedownAndOtherAdjustments" xlink:label="gnrc_NoncashWritedownAndOtherAdjustments" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NoncashWritedownAndOtherAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_NoncashWritedownAndOtherAdjustments</link:label>
    <link:label xlink:label="gnrc_NoncashWritedownAndOtherAdjustments-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Non-cash write-down and other adjustments (1)</link:label>
    <link:label xlink:label="gnrc_NoncashWritedownAndOtherAdjustments-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information about non-cash write-down and other adjustments. Includes gains/losses on disposal of assets, unrealized mark-to-market adjustments on commodity contracts, and certain foreign currency and purchase accounting related adjustments.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NoncashWritedownAndOtherAdjustments" xlink:to="gnrc_NoncashWritedownAndOtherAdjustments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</link:label>
    <link:label xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Percentage of Voting Interests Acquired</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:label="us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillAndIntangibleAssetImpairment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GoodwillAndIntangibleAssetImpairment</link:label>
    <link:label xlink:label="us-gaap_GoodwillAndIntangibleAssetImpairment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Asset Impairment, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:to="us-gaap_GoodwillAndIntangibleAssetImpairment-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PerformanceShareAwardPercentage" xlink:label="gnrc_PerformanceShareAwardPercentage" xlink:type="locator"/>
    <link:label xlink:label="gnrc_PerformanceShareAwardPercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_PerformanceShareAwardPercentage</link:label>
    <link:label xlink:label="gnrc_PerformanceShareAwardPercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Performance Share Award, Percentage</link:label>
    <link:label xlink:label="gnrc_PerformanceShareAwardPercentage-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The percentage of the target performance share award.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_PerformanceShareAwardPercentage" xlink:to="gnrc_PerformanceShareAwardPercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Information, Nonrecurring Adjustments [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:label="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Net Benefit Costs [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:to="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Effect of Significant Unobservable Inputs, Changes in Plan Assets [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:label="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Assumptions [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:to="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Allocation of Plan Assets [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillGross" xlink:label="us-gaap_GoodwillGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillGross" xlink:to="us-gaap_GoodwillGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:label="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GoodwillImpairedAccumulatedImpairmentLoss</link:label>
    <link:label xlink:label="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accumulated impairment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:to="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfGoodwillTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionPlansDefinedBenefitMember" xlink:label="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PensionPlansDefinedBenefitMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pension Plan [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionPlansDefinedBenefitMember" xlink:to="us-gaap_PensionPlansDefinedBenefitMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetirementPlanTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetirementPlanTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="us-gaap_RetirementPlanTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CreditFacilityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from sale of property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CreditFacilityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_CreditFacilityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:to="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TradeNamesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trade Names [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeNamesMember" xlink:to="us-gaap_TradeNamesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capital expenditures</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Expenditures for property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</link:label>
    <link:label xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dilutive effect of stock compensation awards (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxesPaidNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncompeteAgreementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncompete Agreements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncompeteAgreementsMember" xlink:to="us-gaap_NoncompeteAgreementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DevelopedTechnologyRightsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Developed Technology Rights [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DevelopedTechnologyRightsMember" xlink:to="us-gaap_DevelopedTechnologyRightsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SupplementalCashFlowInformationAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Supplemental disclosure of cash flow information</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PatentsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Patents [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PatentsMember" xlink:to="us-gaap_PatentsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerListsMember" xlink:label="us-gaap_CustomerListsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CustomerListsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Lists [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerListsMember" xlink:to="us-gaap_CustomerListsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:label="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComputerSoftwareIntangibleAssetMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Computer Software, Intangible Asset [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:to="us-gaap_ComputerSoftwareIntangibleAssetMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:label="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:type="locator"/>
    <link:label xlink:label="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">After 2023</link:label>
    <link:label xlink:label="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of long-term debt, sinking fund requirements, and other securities redeemable at fixed or determinable prices and dates maturing after the fourth fiscal year following the latest fiscal year.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:to="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:label="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:type="locator"/>
    <link:label xlink:label="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_TaxCreditCarryForwardStateResearchAndDevelopment</link:label>
    <link:label xlink:label="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Credit Carry Forward State Research and Development</link:label>
    <link:label xlink:label="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The amount of the state research and development credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:to="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance</link:label>
    <link:label xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Deferred</link:label>
    <link:label xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The component of income tax expense for the period representing the increase (decrease) in the entity's deferred tax assets and liabilities pertaining to continuing operations before adjustment of change in valuation allowance.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:to="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TaxCreditCarryforwardStateManufacturing" xlink:label="gnrc_TaxCreditCarryforwardStateManufacturing" xlink:type="locator"/>
    <link:label xlink:label="gnrc_TaxCreditCarryforwardStateManufacturing-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_TaxCreditCarryforwardStateManufacturing</link:label>
    <link:label xlink:label="gnrc_TaxCreditCarryforwardStateManufacturing-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward State Manufacturing</link:label>
    <link:label xlink:label="gnrc_TaxCreditCarryforwardStateManufacturing-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The amount of the state manufacturing tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_TaxCreditCarryforwardStateManufacturing" xlink:to="gnrc_TaxCreditCarryforwardStateManufacturing-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">As reported</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income attributable to Generac Holdings Inc.</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income attributable to Generac Holdings Inc.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:label="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DefinedContributionPlanPercentageOfEligibleCompensation</link:label>
    <link:label xlink:label="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan Percentage of Eligible Compensation</link:label>
    <link:label xlink:label="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Percentage of eligible compensation of employees under defined contribution plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:to="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:label="gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:type="locator"/>
    <link:label xlink:label="gnrc_EmployerContributionUnderMedicalAndDentalPlan-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_EmployerContributionUnderMedicalAndDentalPlan</link:label>
    <link:label xlink:label="gnrc_EmployerContributionUnderMedicalAndDentalPlan-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employer Contribution under Medical and Dental Plan</link:label>
    <link:label xlink:label="gnrc_EmployerContributionUnderMedicalAndDentalPlan-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Contribution made under medical and dental plan made by the employer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:to="gnrc_EmployerContributionUnderMedicalAndDentalPlan-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestrictedStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityAndRealEstateMember" xlink:label="gnrc_EquityAndRealEstateMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_EquityAndRealEstateMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity and Real Estate [Member]</link:label>
    <link:label xlink:label="gnrc_EquityAndRealEstateMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">This category includes information about investment in equity ownership interests and real estate.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_EquityAndRealEstateMember" xlink:to="gnrc_EquityAndRealEstateMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PerformanceSharesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Performance Shares [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PerformanceSharesMember" xlink:to="us-gaap_PerformanceSharesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeStockOptionMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign currency translation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticEquityMember" xlink:label="gnrc_DomesticEquityMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DomesticEquityMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Domestic Equity [Member]</link:label>
    <link:label xlink:label="gnrc_DomesticEquityMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">This category includes information about ownership interests or the right to acquire ownership interests in corporations and other domestic legal entities which ownership interest is represented by shares of common or preferred stock.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DomesticEquityMember" xlink:to="gnrc_DomesticEquityMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities, Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:label="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Fair Value of Plan Assets [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:to="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillAcquiredDuringPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GoodwillAcquiredDuringPeriod</link:label>
    <link:label xlink:label="us-gaap_GoodwillAcquiredDuringPeriod-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Acquisitions of businesses, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="us-gaap_GoodwillAcquiredDuringPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalEquityMember" xlink:label="gnrc_InternationalEquityMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_InternationalEquityMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">International Equity [Member]</link:label>
    <link:label xlink:label="gnrc_InternationalEquityMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">This category includes information about ownership interests or the right to acquire ownership interests in corporations and other international legal entities which ownership interest is represented by shares of common or preferred stock.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_InternationalEquityMember" xlink:to="gnrc_InternationalEquityMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherInvestmentMember" xlink:label="gnrc_OtherInvestmentMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OtherInvestmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Investment [Member]</link:label>
    <link:label xlink:label="gnrc_OtherInvestmentMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Other investments not specified in the taxonomy.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OtherInvestmentMember" xlink:to="gnrc_OtherInvestmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:type="locator"/>
    <link:label xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent</link:label>
    <link:label xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">State credits</link:label>
    <link:label xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state tax credit.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongtermDebtTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongtermDebtTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LongtermDebtTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected annual dividend per share (in dollars per share)</link:label>
    <link:label xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The estimated amount of dividends per share to be paid to holders of the underlying shares (expected dividends) over the option's term.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:to="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:label="gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ValuationAndQualifyingAccountsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Valuation and Qualifying Accounts [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ValuationAndQualifyingAccountsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">A tabular disclosure of allowance and reserve accounts including their beginning and ending balances, as well as a reconciliation by type of activity during the period. Alternatively, disclosure of the required information may be within the footnotes to the financial statements or a supplemental schedule to the financial statements.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:to="gnrc_ValuationAndQualifyingAccountsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedCustomerListsNet" xlink:label="gnrc_FiniteLivedCustomerListsNet" xlink:type="locator"/>
    <link:label xlink:label="gnrc_FiniteLivedCustomerListsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer lists, net</link:label>
    <link:label xlink:label="gnrc_FiniteLivedCustomerListsNet-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Carrying amount, net of accumulated amortization, as of the balance sheet date of an asset having a finite beneficial life acquired in a business combination or other transaction representing a favorable existing relationship with customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_FiniteLivedCustomerListsNet" xlink:to="gnrc_FiniteLivedCustomerListsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued wages and employee benefits</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOtherAccruedLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TradeNamesNet" xlink:label="gnrc_TradeNamesNet" xlink:type="locator"/>
    <link:label xlink:label="gnrc_TradeNamesNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tradenames, net</link:label>
    <link:label xlink:label="gnrc_TradeNamesNet-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The net carrying amount as of the balance sheet date of indefinite-lived and finite-lived tradenames on the statement of financial position representing the rights acquired through registration of a trade name to gain or protect exclusive use thereof.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_TradeNamesNet" xlink:to="gnrc_TradeNamesNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryValuationReserveMember" xlink:label="us-gaap_InventoryValuationReserveMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryValuationReserveMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Reserve, Inventory [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryValuationReserveMember" xlink:to="us-gaap_InventoryValuationReserveMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsPayable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:label="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation and Amortization</link:label>
    <link:label xlink:label="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets. Amount includes additional accelerated depreciation recognized in the current period.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:to="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:label="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reserves Assumed in Acquisition</link:label>
    <link:label xlink:label="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of increase (decrease) in valuation and qualifying accounts and reserves from business combination.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:to="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_ExcessPurchasePriceOverPredecessorBasis</link:label>
    <link:label xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Excess purchase price over predecessor basis</link:label>
    <link:label xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The element that represents the excess purchase price over predecessor basis.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasis-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:label="gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ChangeInNoncontrollingInterestEquityImpact-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_ChangeInNoncontrollingInterestEquityImpact</link:label>
    <link:label xlink:label="gnrc_ChangeInNoncontrollingInterestEquityImpact-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Change in noncontrolling interest share</link:label>
    <link:label xlink:label="gnrc_ChangeInNoncontrollingInterestEquityImpact-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents equity impact of the change in non-controlling interest.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:to="gnrc_ChangeInNoncontrollingInterestEquityImpact-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OtherAccruedLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Accrued Liabilities [Member]</link:label>
    <link:label xlink:label="gnrc_OtherAccruedLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Related to other accrued liabilities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OtherAccruedLiabilitiesMember" xlink:to="gnrc_OtherAccruedLiabilitiesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseAndOtherAssetsMember" xlink:label="gnrc_OperatingLeaseAndOtherAssetsMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OperatingLeaseAndOtherAssetsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease and Other Assets [Member]</link:label>
    <link:label xlink:label="gnrc_OperatingLeaseAndOtherAssetsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Related to operating lease and other assets.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OperatingLeaseAndOtherAssetsMember" xlink:to="gnrc_OperatingLeaseAndOtherAssetsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Pension liability adjustment, tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease and Other Long-term Liabilities [Member]</link:label>
    <link:label xlink:label="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Related to operating lease and other long-term liabilities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:to="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:label="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill</link:label>
    <link:label xlink:label="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Purchase Price Allocation, Intangible Assets Including Goodwill</link:label>
    <link:label xlink:label="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The amount of acquisition cost of a business combination allocated to an identifiable intangible asset including goodwill.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:to="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForCreditLossMember" xlink:label="us-gaap_AllowanceForCreditLossMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllowanceForCreditLossMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Allowance, Credit Loss [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForCreditLossMember" xlink:to="us-gaap_AllowanceForCreditLossMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AllocatedShareBasedCompensationExpense</link:label>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NumberOfNewContractsEntered" xlink:label="gnrc_NumberOfNewContractsEntered" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NumberOfNewContractsEntered-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_NumberOfNewContractsEntered</link:label>
    <link:label xlink:label="gnrc_NumberOfNewContractsEntered-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of New Contracts Entered</link:label>
    <link:label xlink:label="gnrc_NumberOfNewContractsEntered-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of new contracts entered into during the period mentioned.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NumberOfNewContractsEntered" xlink:to="gnrc_NumberOfNewContractsEntered-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:label="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk</link:label>
    <link:label xlink:label="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Assets (Liabilities), Net Fair Value of Derivative Contracts, Excluding Impact of Credit Risk</link:label>
    <link:label xlink:label="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the fair value of derivative contracts excluding impact of credit risk.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:to="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Accrued Liabilities and Operating Lease and Other Long-term Liabilities [Member]</link:label>
    <link:label xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Primary financial statement caption encompassing other accrued liabilities and operating lease and other long-term liabilities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:to="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:label="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Derivative Assets (Liabilities) at Fair Value [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of derivative assets and liabilities at fair value.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:to="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ComprehensiveIncomeNetOfTax</link:label>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Comprehensive income attributable to Generac Holdings Inc.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockSharesAcquired-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TreasuryStockSharesAcquired</link:label>
    <link:label xlink:label="us-gaap_TreasuryStockSharesAcquired-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Net share settlement of restricted stock awards (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharesOutstanding</link:label>
    <link:label xlink:label="us-gaap_SharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance (in shares)</link:label>
    <link:label xlink:label="us-gaap_SharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOtherOperatingAssets</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LeaseCost</link:label>
    <link:label xlink:label="us-gaap_LeaseCost-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total lease cost</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_LeaseCost-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFairValue" xlink:label="us-gaap_DebtInstrumentFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentFairValue</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentFairValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Fair Value Disclosure, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFairValue" xlink:to="us-gaap_DebtInstrumentFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease cost</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseCost" xlink:to="us-gaap_OperatingLeaseCost-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseCostTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCostTableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFeeAmount" xlink:label="us-gaap_DebtInstrumentFeeAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentFeeAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentFeeAmount</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentFeeAmount-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Fee Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFeeAmount" xlink:to="us-gaap_DebtInstrumentFeeAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_VariableRateDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_VariableRateDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_VariableRateAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="us-gaap_CapitalizedContractCostAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CapitalizedContractCostAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CapitalizedContractCostAmortization</link:label>
    <link:label xlink:label="us-gaap_CapitalizedContractCostAmortization-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost, Amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedContractCostAmortization" xlink:to="us-gaap_CapitalizedContractCostAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ResidentialPowerProductsMember" xlink:label="gnrc_ResidentialPowerProductsMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ResidentialPowerProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Residential Power Products [Member]</link:label>
    <link:label xlink:label="gnrc_ResidentialPowerProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents products and services related to residential power.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ResidentialPowerProductsMember" xlink:to="gnrc_ResidentialPowerProductsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsReceivable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CommercialAndIndustrialPowerProductsMember" xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commercial and Industrial Power Products [Member]</link:label>
    <link:label xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents products and services related to commercial and industrial power.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:to="gnrc_CommercialAndIndustrialPowerProductsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherProductsAndServicesMember" xlink:label="gnrc_OtherProductsAndServicesMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OtherProductsAndServicesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Products and Services [Member]</link:label>
    <link:label xlink:label="gnrc_OtherProductsAndServicesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information pertaining to products and services not separately disclosed.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OtherProductsAndServicesMember" xlink:to="gnrc_OtherProductsAndServicesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TreasuryStockValueAcquiredCostMethod</link:label>
    <link:label xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Net share settlement of restricted stock awards</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DiesAndToolsMember" xlink:label="gnrc_DiesAndToolsMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DiesAndToolsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dies and Tools [Member]</link:label>
    <link:label xlink:label="gnrc_DiesAndToolsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tangible personal property used to produce goods and services.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DiesAndToolsMember" xlink:to="gnrc_DiesAndToolsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TreasuryStockValue</link:label>
    <link:label xlink:label="us-gaap_TreasuryStockValue-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock, at cost, 9,103,013 and 9,047,060 shares at December 31, 2019 and 2018, respectively</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:label="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts</link:label>
    <link:label xlink:label="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Amortization of deferred revenue contracts</link:label>
    <link:label xlink:label="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the aggregate decrease in the liability for accruals related to extended product warranties issued during the reporting period, due to amortization of deferred revenue.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:to="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan, Amortization of Gain (Loss)</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Amortization of net loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:to="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:label="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranty Obligations Included In Consolidated Balance Sheet [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Product warranty obligations included in consolidated balance sheet.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:to="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInInventories</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:label="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net periodic pension cost (benefit)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanInterestCost" xlink:label="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanInterestCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest cost</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanInterestCost" xlink:to="us-gaap_DefinedBenefitPlanInterestCost-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Expected return on plan assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:to="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_UncommittedIncrementalTermLoanFacility" xlink:label="gnrc_UncommittedIncrementalTermLoanFacility" xlink:type="locator"/>
    <link:label xlink:label="gnrc_UncommittedIncrementalTermLoanFacility-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_UncommittedIncrementalTermLoanFacility</link:label>
    <link:label xlink:label="gnrc_UncommittedIncrementalTermLoanFacility-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Uncommitted Incremental Term Loan Facility</link:label>
    <link:label xlink:label="gnrc_UncommittedIncrementalTermLoanFacility-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Refers to uncommitted incremental term loan facility after amendment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_UncommittedIncrementalTermLoanFacility" xlink:to="gnrc_UncommittedIncrementalTermLoanFacility-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity</link:label>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</link:label>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Exercised, number of options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_TermLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Term Loan [Member]</link:label>
    <link:label xlink:label="gnrc_TermLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Credit facility arrangement having an initial term longer than one year or beyond the normal operating cycle, if longer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_TermLoanMember" xlink:to="gnrc_TermLoanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LIBORFloorRateMember" xlink:label="gnrc_LIBORFloorRateMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_LIBORFloorRateMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">LIBOR Floor Rate [Member]</link:label>
    <link:label xlink:label="gnrc_LIBORFloorRateMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Floor interest rate at which a bank borrows funds from other banks in the London interbank market.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_LIBORFloorRateMember" xlink:to="gnrc_LIBORFloorRateMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedLIBORRateMember" xlink:label="gnrc_AdjustedLIBORRateMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AdjustedLIBORRateMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjusted LIBOR Rate [Member]</link:label>
    <link:label xlink:label="gnrc_AdjustedLIBORRateMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Adjusted interest rate at which a bank borrows funds from other banks in the London interbank market, plus an applicable margin.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AdjustedLIBORRateMember" xlink:to="gnrc_AdjustedLIBORRateMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThresholdMember" xlink:label="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NetDebtLeverageRatioThresholdMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Debt Leverage Ratio Threshold [Member]</link:label>
    <link:label xlink:label="gnrc_NetDebtLeverageRatioThresholdMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the specific threshold of the company's leverage ratio according to the terms of the loan agreement.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NetDebtLeverageRatioThresholdMember" xlink:to="gnrc_NetDebtLeverageRatioThresholdMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:label="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1</link:label>
    <link:label xlink:label="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss on pension settlement</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:to="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</link:label>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThreshold" xlink:label="gnrc_NetDebtLeverageRatioThreshold" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NetDebtLeverageRatioThreshold-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_NetDebtLeverageRatioThreshold</link:label>
    <link:label xlink:label="gnrc_NetDebtLeverageRatioThreshold-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net Debt Leverage Ratio Threshold</link:label>
    <link:label xlink:label="gnrc_NetDebtLeverageRatioThreshold-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Threshold of the ratio used to calculate the financial leverage and the ability to meet financial obligations. If the borrower's actual net debt leverage ratio falls below this threshold for a certain measurement period, the applicable margin related to LIBOR rate loans can be reduced by a specified percentage.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NetDebtLeverageRatioThreshold" xlink:to="gnrc_NetDebtLeverageRatioThreshold-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmendedABLFacilityMember" xlink:label="gnrc_AmendedABLFacilityMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AmendedABLFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amended ABL Facility [Member]</link:label>
    <link:label xlink:label="gnrc_AmendedABLFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The description or name of the credit facility.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AmendedABLFacilityMember" xlink:to="gnrc_AmendedABLFacilityMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ABLRevolvingCreditFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ABL Revolving Credit Facility [Member]</link:label>
    <link:label xlink:label="gnrc_ABLRevolvingCreditFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ABLRevolvingCreditFacilityMember" xlink:to="gnrc_ABLRevolvingCreditFacilityMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted, number of options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited, number of options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherLinesOfCreditMember" xlink:label="gnrc_OtherLinesOfCreditMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OtherLinesOfCreditMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Lines of Credit [Member]</link:label>
    <link:label xlink:label="gnrc_OtherLinesOfCreditMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Other contractual arrangements with lenders 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, not separately disclosed.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OtherLinesOfCreditMember" xlink:to="gnrc_OtherLinesOfCreditMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmountFinancedByDealers" xlink:label="gnrc_AmountFinancedByDealers" xlink:type="locator"/>
    <link:label xlink:label="gnrc_AmountFinancedByDealers-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_AmountFinancedByDealers</link:label>
    <link:label xlink:label="gnrc_AmountFinancedByDealers-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amount Financed by Dealers</link:label>
    <link:label xlink:label="gnrc_AmountFinancedByDealers-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount financed by dealers to purchase goods from the entity.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_AmountFinancedByDealers" xlink:to="gnrc_AmountFinancedByDealers-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesAndStockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and stockholders&#8217; equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:label xlink:label="country_US-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">UNITED STATES</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:label="us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShortTermDebtTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Short-term Debt [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:to="us-gaap_ScheduleOfShortTermDebtTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net changes in operating assets and liabilities, net of acquisitions:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCompensationArrangementWithIndividualSharesGranted</link:label>
    <link:label xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Compensation Arrangement with Individual, Shares Granted</link:label>
    <link:label xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The number of shares granted in a deferred compensation arrangement with an individual.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:to="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherNoncashIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherNoncashIncomeExpense</link:label>
    <link:label xlink:label="us-gaap_OtherNoncashIncomeExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease liabilities - noncurrent (3)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total operating lease liabilities</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease liabilities - current (2)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance lease liabilities - current (5)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityCurrent" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance lease liabilities - noncurrent (6)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease ROU assets (1)</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total minimum lease payments, operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total finance lease liabilities</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Present value of minimum lease payments, finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeasePrincipalPayments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financing cash flows from finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Interest component</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredIncomeTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022, operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023, operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseRightOfUseAsset</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Finance lease ROU assets, net (4)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">After 2023, operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020, operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021, operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Excess tax benefits from equity awards</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityIncentivePlanPlanMember" xlink:label="gnrc_EquityIncentivePlanPlanMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_EquityIncentivePlanPlanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Incentive Plan (Plan) [Member]</link:label>
    <link:label xlink:label="gnrc_EquityIncentivePlanPlanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the equity incentive plan (Plan).</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_EquityIncentivePlanPlanMember" xlink:to="gnrc_EquityIncentivePlanPlanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Non-cash share-based compensation expense (2)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:label="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit</link:label>
    <link:label xlink:label="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act, Change in Tax Rate, Deferred Tax Liability, Income Tax Benefit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:to="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:label="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AmortizationOfFinancingCostsAndDiscounts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of original issue discount and deferred financing costs</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:to="us-gaap_AmortizationOfFinancingCostsAndDiscounts-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Depreciation-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Depreciation</link:label>
    <link:label xlink:label="us-gaap_Depreciation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Depreciation</link:label>
    <link:label xlink:label="us-gaap_Depreciation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Depreciation" xlink:to="us-gaap_Depreciation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DepreciationDepletionAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DepreciationDepletionAndAmortization</link:label>
    <link:label xlink:label="us-gaap_DepreciationDepletionAndAmortization-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:label="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption</link:label>
    <link:label xlink:label="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Noncontrolling Interest, Term of Put Option</link:label>
    <link:label xlink:label="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The term of a put option available to the noncontrolling interest of a business acquired by the reporting entity.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:to="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockShares-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury stock, shares (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockShares" xlink:to="us-gaap_TreasuryStockShares-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, par value $0.01, 500,000,000 shares authorized, 71,667,726 and 71,186,418 shares issued at December 31, 2019 and 2018, respectively</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:type="locator"/>
    <link:label xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets acquired</link:label>
    <link:label xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the total assets acquired from a business combination which includes identifiable assets acquired and liabilities assumed assets, including goodwill.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:label="gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_RedeemableNoncontrollingInterestTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Redeemable Noncontrolling Interest [Text Block]</link:label>
    <link:label xlink:label="gnrc_RedeemableNoncontrollingInterestTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Entire disclosure for redeemable noncontrolling interest.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:to="gnrc_RedeemableNoncontrollingInterestTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExtendedWarrantyTerm" xlink:label="gnrc_ExtendedWarrantyTerm" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ExtendedWarrantyTerm-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_ExtendedWarrantyTerm</link:label>
    <link:label xlink:label="gnrc_ExtendedWarrantyTerm-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Extended Warranty Term</link:label>
    <link:label xlink:label="gnrc_ExtendedWarrantyTerm-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Expiration period of the extended warranty.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ExtendedWarrantyTerm" xlink:to="gnrc_ExtendedWarrantyTerm-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionContributions" xlink:label="us-gaap_PensionContributions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PensionContributions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PensionContributions</link:label>
    <link:label xlink:label="us-gaap_PensionContributions-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payment for Pension Benefits</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionContributions" xlink:to="us-gaap_PensionContributions-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SelmecMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selmec [Member]</link:label>
    <link:label xlink:label="gnrc_SelmecMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the information pertaining to Selmec.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SelmecMember" xlink:to="gnrc_SelmecMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:label xlink:label="srt_RangeMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeasePayments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating cash flows from operating leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:label xlink:label="srt_MaximumMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:label xlink:label="srt_MinimumMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_OwnershipDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Ownership [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipDomain" xlink:to="srt_OwnershipDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_ProductOrServiceAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_ProductsAndServicesDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_RangeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:label="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseInterestPaymentOnLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating cash flows from finance leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:to="us-gaap_FinanceLeaseInterestPaymentOnLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="us-gaap_OperatingLeasesRentExpenseNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeasesRentExpenseNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeasesRentExpenseNet</link:label>
    <link:label xlink:label="us-gaap_OperatingLeasesRentExpenseNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Leases, Rent Expense, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasesRentExpenseNet" xlink:to="us-gaap_OperatingLeasesRentExpenseNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_OwnershipAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Ownership [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestPaidNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SavingsPlan401kMember" xlink:label="gnrc_SavingsPlan401kMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_SavingsPlan401kMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Savings Plan 401(k) [Member]</link:label>
    <link:label xlink:label="gnrc_SavingsPlan401kMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the companies defined-contribution 401(k) savings plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_SavingsPlan401kMember" xlink:to="gnrc_SavingsPlan401kMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_StatementGeographicalAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_SegmentGeographicalDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueInputsLevel3Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel3Member" xlink:to="us-gaap_FairValueInputsLevel3Member-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueInputsLevel1Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel1Member" xlink:to="us-gaap_FairValueInputsLevel1Member-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueInputsLevel2Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel2Member" xlink:to="us-gaap_FairValueInputsLevel2Member-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ExtendedProductWarrantyAccrual</link:label>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExtendedProductWarrantyAccrual" xlink:to="us-gaap_ExtendedProductWarrantyAccrual-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrualCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ExtendedProductWarrantyAccrualCurrent</link:label>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrualCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion - other accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:to="us-gaap_ExtendedProductWarrantyAccrualCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrualNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ExtendedProductWarrantyAccrualNoncurrent</link:label>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrualNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term portion - other long-term liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:to="us-gaap_ExtendedProductWarrantyAccrualNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MinorityInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncontrolling interests</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterest" xlink:to="us-gaap_MinorityInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred revenue contracts issued</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:to="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current portion - other accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term portion - other long-term liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StandardProductWarrantyAccrual</link:label>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrual-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualPayments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StandardProductWarrantyAccrualPayments</link:label>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualPayments-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPayments" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdditionalPaidInCapital-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:label="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product warranty reserve assumed in acquisition</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:to="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Provision for warranty issued</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:to="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Changes in estimates for pre-existing warranties</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:to="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders&#8217; equity:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Redeemable noncontrolling interest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Liabilities</link:label>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</link:label>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredIncomeTaxLiabilitiesNet</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Liabilities, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ContractWithCustomerLiability</link:label>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountingStandardsUpdate201602Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2016-02 [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingStandardsUpdate201602Member" xlink:to="us-gaap_AccountingStandardsUpdate201602Member-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NeurioMember" xlink:label="gnrc_NeurioMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_NeurioMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Neurio [Member]</link:label>
    <link:label xlink:label="gnrc_NeurioMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information related to Neurio.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_NeurioMember" xlink:to="gnrc_NeurioMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:label="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease and other long-term liabilities</link:label>
    <link:label xlink:label="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Present value of lessee's discounted obligation for lease payments from operating lease, and other liabilities classified as noncurrent.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:to="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:label="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease and other assets</link:label>
    <link:label xlink:label="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of lessee's right to use underlying asset under operating lease and other assets after one year or beyond the normal operating cycle, if longer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:to="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TypeOfAdoptionMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_TypeOfAdoptionMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:label="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Components of Lease Assets and Liabilities [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of components of lease assets and liabilities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:to="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:label="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:type="locator"/>
    <link:label xlink:label="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract</link:label>
    <link:label xlink:label="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease and Finance Lease, Remaining Term of Contract</link:label>
    <link:label xlink:label="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Remaining term of lessee's operating lease and finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:to="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:label="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Leases Cash Flow Information [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of leases related to cash flow information.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:to="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:type="locator"/>
    <link:label xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation</link:label>
    <link:label xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accumulated depreciation - finance lease ROU assets</link:label>
    <link:label xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of accumulated depreciation for finance lease right of use assets.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:to="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetGross" xlink:label="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="locator"/>
    <link:label xlink:label="gnrc_FinanceLeaseRightOfUseAssetGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance lease ROU assets, gross</link:label>
    <link:label xlink:label="gnrc_FinanceLeaseRightOfUseAssetGross-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Gross amount of lessee's right to use underlying asset under finance lease.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:to="gnrc_FinanceLeaseRightOfUseAssetGross-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating and Finance Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of undiscounted cash flows of operating and finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating and finance lease liability recognized in statement of financial position.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:to="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RestrictedStockAndPerformanceSharesMember" xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="locator"/>
    <link:label xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock and Performance Shares [Member]</link:label>
    <link:label xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information about restricted stock and performance shares.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:to="gnrc_RestrictedStockAndPerformanceSharesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:label="gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="gnrc_LeaseTermAndDiscountRateTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease, Term and Discount Rate [Table Text Block]</link:label>
    <link:label xlink:label="gnrc_LeaseTermAndDiscountRateTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of term and discount rate of lease.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:to="gnrc_LeaseTermAndDiscountRateTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncontrollingInterestMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncontrolling Interest [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncontrollingInterestMember" xlink:to="us-gaap_NoncontrollingInterestMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:label="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockAcquiredAverageCostPerShare-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TreasuryStockAcquiredAverageCostPerShare</link:label>
    <link:label xlink:label="us-gaap_TreasuryStockAcquiredAverageCostPerShare-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury Stock Acquired, Average Cost Per Share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:to="us-gaap_TreasuryStockAcquiredAverageCostPerShare-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockMember" xlink:to="us-gaap_TreasuryStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:label="us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockRepurchaseProgramPeriodInForce1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockRepurchaseProgramPeriodInForce1</link:label>
    <link:label xlink:label="us-gaap_StockRepurchaseProgramPeriodInForce1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Period in Force</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:to="us-gaap_StockRepurchaseProgramPeriodInForce1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdditionalPaidInCapitalMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ParentMember" xlink:label="us-gaap_ParentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ParentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Parent [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ParentMember" xlink:to="us-gaap_ParentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockRepurchaseProgramAuthorizedAmount1</link:label>
    <link:label xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Authorized Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherBorrowings" xlink:label="us-gaap_OtherBorrowings" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherBorrowings-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label xlink:label="us-gaap_OtherBorrowings-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherBorrowings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherBorrowings" xlink:to="us-gaap_OtherBorrowings-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementEquityComponentsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtAndCapitalLeaseObligations" xlink:label="us-gaap_DebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtAndCapitalLeaseObligations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtAndCapitalLeaseObligations</link:label>
    <link:label xlink:label="us-gaap_DebtAndCapitalLeaseObligations-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtAndCapitalLeaseObligations" xlink:to="us-gaap_DebtAndCapitalLeaseObligations-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityComponentDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LongTermDebt</link:label>
    <link:label xlink:label="us-gaap_LongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term Debt, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ABL facility</link:label>
    <link:label xlink:label="us-gaap_LineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term Line of Credit, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredFinanceCostsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredFinanceCostsNet</link:label>
    <link:label xlink:label="us-gaap_DeferredFinanceCostsNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Issuance Costs, Net, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFinanceCostsNet" xlink:to="us-gaap_DeferredFinanceCostsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_VehiclesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vehicles [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VehiclesMember" xlink:to="us-gaap_VehiclesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OfficeEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Office Equipment [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OfficeEquipmentMember" xlink:to="us-gaap_OfficeEquipmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:type="locator"/>
    <link:label xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesVested-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">gnrc_DeferredCompensationArrangementWithIndividualSharesVested</link:label>
    <link:label xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesVested-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Compensation Arrangement with Individual, Shares Vested</link:label>
    <link:label xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesVested-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of shares vested during the period pursuant to the terms of a deferred compensation arrangement.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:to="gnrc_DeferredCompensationArrangementWithIndividualSharesVested-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentAnnualReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Annual Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MachineryAndEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Machinery and Equipment [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BalanceSheetLocationAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BalanceSheetLocationDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentUnamortizedDiscount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentUnamortizedDiscount</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentUnamortizedDiscount-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Original issue discount and deferred financing costs</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentUnamortizedDiscount" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityIncorporationStateCountryCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentCarryingAmount-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Term loan</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentCarryingAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentCarryingAmount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_DebtInstrumentCarryingAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentTransitionReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShortTermBorrowings-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term borrowings</link:label>
    <link:label xlink:label="us-gaap_ShortTermBorrowings-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-term Debt, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermBorrowings" xlink:to="us-gaap_ShortTermBorrowings-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityInteractiveDataCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:label xlink:label="dei_SecurityExchangeName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:label xlink:label="dei_Security12bTitle-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term borrowings and finance lease obligations</link:label>
    <link:label xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CostOfSalesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfSalesMember" xlink:to="us-gaap_CostOfSalesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:label="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Charges to Reserve, Net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:to="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="us-gaap_ValuationAllowancesAndReservesBalance" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesBalance-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ValuationAllowancesAndReservesBalance</link:label>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesBalance-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at Beginning of Year</link:label>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesBalance-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at End of Year</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesBalance" xlink:to="us-gaap_ValuationAllowancesAndReservesBalance-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additions Charged to Earnings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:to="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementLocationAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementLocationDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners</link:label>
    <link:label xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Redemption value adjustment</link:label>
    <link:label xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Redeemable noncontrolling interest redemption value adjustment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementBusinessSegmentsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SegmentDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentDomain" xlink:to="us-gaap_SegmentDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RedeemableNoncontrollingInterestEquityFairValue</link:label>
    <link:label xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityFairValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Redeemable Noncontrolling Interest, Equity, Fair Value, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:label="us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RedeemableNoncontrollingInterestTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Redeemable Noncontrolling Interest [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:to="us-gaap_RedeemableNoncontrollingInterestTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:label="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Schedule of Valuation and Qualifying Accounts Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:to="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax</link:label>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Unrealized Gain (Loss) on Derivatives Arising During Period, before Tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net unrealized gain (loss) on derivatives</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrealized gain (loss) on interest rate swaps, tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeNet" xlink:label="us-gaap_DerivativeFairValueOfDerivativeNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DerivativeFairValueOfDerivativeNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value of Derivatives</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeFairValueOfDerivativeNet" xlink:to="us-gaap_DerivativeFairValueOfDerivativeNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Stockholders' equity attributable to Generac Holdings, Inc.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestRateSwapMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Rate Swap [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestRateSwapMember" xlink:to="us-gaap_InterestRateSwapMember-label" xlink:type="arc"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>14
<FILENAME>gnrc-20191231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 09:07PM UTC 2020-02-25--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-21-subsequent-events" xlink:href="gnrc-20191231.xsd#statement-note-21-subsequent-events" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-21-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SubsequentEventsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts" xlink:href="gnrc-20191231.xsd#statement-note-20-valuation-and-qualifying-accounts" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:label="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited" xlink:href="gnrc-20191231.xsd#statement-note-19-quarterly-financial-information-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-1-description-of-business-" xlink:href="gnrc-20191231.xsd#statement-note-1-description-of-business-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-1-description-of-business-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-document-and-entity-information" xlink:href="gnrc-20191231.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentAnnualReport" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" xlink:type="arc"/>
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityWellKnownSeasonedIssuer" xlink:type="arc"/>
    <link:presentationArc order="23" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityVoluntaryFilers" xlink:type="arc"/>
    <link:presentationArc order="24" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" xlink:type="arc"/>
    <link:presentationArc order="25" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent" xlink:type="arc"/>
    <link:presentationArc order="26" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:presentationArc order="27" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" xlink:type="arc"/>
    <link:presentationArc order="28" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
    <link:presentationArc order="29" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany" xlink:type="arc"/>
    <link:presentationArc order="30" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityPublicFloat" xlink:type="arc"/>
    <link:presentationArc order="31" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals" xlink:href="gnrc-20191231.xsd#statement-consolidated-balance-sheets-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockShares" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-stockholders-equity-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax-n8" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NeurioMember" xlink:label="gnrc_NeurioMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PikaMember" xlink:label="gnrc_PikaMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_PikaMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_NeurioMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_SelmecMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CaptivaEnergySolutionsMember" xlink:label="gnrc_CaptivaEnergySolutionsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PramacMember" xlink:label="gnrc_PramacMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:label="gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_OwnershipAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="gnrc_RedeemableNoncontrollingInterestTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherNetMember" xlink:label="gnrc_OtherNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="us-gaap_NondesignatedMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_CommodityContractMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_HedgingDesignationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_NondesignatedMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_CostOfSalesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_ForeignExchangeContractMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="gnrc_OtherNetMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_InterestRateSwapMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetAssetsGeographicAreaMember" xlink:label="us-gaap_NetAssetsGeographicAreaMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_GeographicConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_US" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_NetAssetsGeographicAreaMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:label="us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LeasesOfLesseeDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedLIBORRateMember" xlink:label="gnrc_AdjustedLIBORRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmendedABLFacilityMember" xlink:label="gnrc_AmendedABLFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LIBORFloorRateMember" xlink:label="gnrc_LIBORFloorRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThresholdMember" xlink:label="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_BaseRateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="gnrc_AdjustedLIBORRateMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="gnrc_LIBORFloorRateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="gnrc_AmendedABLFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program" xlink:href="gnrc-20191231.xsd#statement-note-13-stock-repurchase-program" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="us-gaap_TreasuryStockTextBlock" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_TreasuryStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_TreasuryStockTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityAndRealEstateMember" xlink:label="gnrc_EquityAndRealEstateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SavingsPlan401kMember" xlink:label="gnrc_SavingsPlan401kMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionPlansDefinedBenefitMember" xlink:label="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="gnrc_SavingsPlan401kMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="gnrc_EquityAndRealEstateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityIncentivePlanPlanMember" xlink:label="gnrc_EquityIncentivePlanPlanMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RestrictedStockAndPerformanceSharesMember" xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_The2019EquityIncentivePlanMember" xlink:label="gnrc_The2019EquityIncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_BoardOfDirectorsChairmanMember" xlink:label="srt_BoardOfDirectorsChairmanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="gnrc_EquityIncentivePlanPlanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="gnrc_The2019EquityIncentivePlanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_PerformanceSharesMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_BoardOfDirectorsChairmanMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies" xlink:href="gnrc-20191231.xsd#statement-note-18-commitments-and-contingencies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NotesToFinancialStatementsAbstract" xlink:label="gnrc_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies" xlink:href="gnrc-20191231.xsd#statement-significant-accounting-policies-policies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-significant-accounting-policies-policies" xlink:label="gnrc_statement-statement-significant-accounting-policies-policies" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="us-gaap_ConcentrationRiskCreditRisk" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtPolicyTextBlock" xlink:label="us-gaap_DebtPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="us-gaap_DerivativesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="us-gaap_ReceivablesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-significant-accounting-policies-policies" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PolicyTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConsolidationPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConcentrationRiskCreditRisk" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ReceivablesPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DebtPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DerivativesPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:label="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" xlink:label="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-2-summary-of-accounting-policies-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-3-acquisitions-tables" xlink:label="gnrc_statement-statement-note-3-acquisitions-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-3-acquisitions-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" xlink:label="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:label="us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_RedeemableNoncontrollingInterestTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:label="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:label="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-tables" xlink:label="gnrc_statement-statement-note-7-segment-reporting-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-7-segment-reporting-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-8-balance-sheet-details-tables" xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-8-balance-sheet-details-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:label="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfIntangibleAssetsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-tables" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:label="gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:label="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:label="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-tables" xlink:label="gnrc_statement-statement-note-10-leases-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-10-leases-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_LeaseTermAndDiscountRateTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:label="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-tables" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-tables" xlink:label="gnrc_statement-statement-note-12-credit-agreements-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:label="us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-12-credit-agreements-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShortTermDebtTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-14-earnings-per-share-tables" xlink:label="gnrc_statement-statement-note-14-earnings-per-share-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-14-earnings-per-share-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-tables" xlink:label="gnrc_statement-statement-note-15-income-taxes-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-15-income-taxes-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:label="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetPeriodicBenefitCostsMember" xlink:label="gnrc_NetPeriodicBenefitCostsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:label="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-tables" xlink:label="gnrc_statement-statement-note-16-benefit-plans-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:label="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:label="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="gnrc_NetPeriodicBenefitCostsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfNetBenefitCostsTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAssumptionsUsedTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-tables" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-tables" xlink:label="gnrc_statement-statement-note-17-share-plans-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-17-share-plans-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables" xlink:href="gnrc-20191231.xsd#statement-note-19-quarterly-financial-information-unaudited-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" xlink:label="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables" xlink:href="gnrc-20191231.xsd#statement-note-20-valuation-and-qualifying-accounts-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:label="gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" xlink:label="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="gnrc_ValuationAndQualifyingAccountsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium" xlink:label="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths" xlink:label="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearFive" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFive-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearFour" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearFour-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearThree" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearThree-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCostsAmortizationExpenseYearTwo" xlink:label="gnrc_DeferredCostsAmortizationExpenseYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NumberOfMajorCustomers" xlink:label="gnrc_NumberOfMajorCustomers-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="us-gaap_AdvertisingExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFairValue" xlink:label="us-gaap_DebtInstrumentFairValue-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetImpairment" xlink:label="us-gaap_GoodwillAndIntangibleAssetImpairment-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NumberOfMajorCustomers-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Depreciation-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillAndIntangibleAssetImpairment-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearThree-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearFour-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCostsAmortizationExpenseYearFive-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerLiability-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdvertisingExpense-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ResearchAndDevelopmentExpense-2" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebt-2" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentFairValue-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill" xlink:label="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue-n2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments" xlink:label="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments-n2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NeurioMember" xlink:label="gnrc_NeurioMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PikaMember" xlink:label="gnrc_PikaMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized" xlink:label="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_PikaMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_NeurioMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_SelmecMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue-n2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption" xlink:label="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessAcquisitionTermOfCallOption" xlink:label="gnrc_BusinessAcquisitionTermOfCallOption-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CaptivaEnergySolutionsMember" xlink:label="gnrc_CaptivaEnergySolutionsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoncontrollingInterestAgreementExtensionOfTerm" xlink:label="gnrc_NoncontrollingInterestAgreementExtensionOfTerm-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PramacMember" xlink:label="gnrc_PramacMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityFairValue" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityFairValue-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_OwnershipAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis" xlink:to="gnrc_PramacMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis" xlink:to="gnrc_CaptivaEnergySolutionsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityFairValue-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NoncontrollingInterestAgreementExtensionOfTerm-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessAcquisitionTermOfCallOption-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk" xlink:label="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk-n2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NumberOfNewContractsEntered" xlink:label="gnrc_NumberOfNewContractsEntered-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherNetMember" xlink:label="gnrc_OtherNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet" xlink:label="us-gaap_DerivativeGainLossOnDerivativeNet-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:label="us-gaap_DerivativeNumberOfInstrumentsHeld-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeRemainingMaturity1" xlink:label="us-gaap_DerivativeRemainingMaturity1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="us-gaap_HedgingDesignationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="us-gaap_HedgingDesignationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="us-gaap_NondesignatedMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_HedgingDesignationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_CommodityContractMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_HedgingDesignationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_HedgingDesignationAxis" xlink:to="us-gaap_NondesignatedMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_CostOfSalesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_ForeignExchangeContractMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="gnrc_OtherNetMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_InterestRateSwapMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeRemainingMaturity1-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeNumberOfInstrumentsHeld-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeGainLossOnDerivativeNet-n2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NumberOfNewContractsEntered-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax-n2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAociCurrentPeriodTax" xlink:label="us-gaap_ReclassificationFromAociCurrentPeriodTax-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax-n2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAociCurrentPeriodTax-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetAssetsGeographicAreaMember" xlink:label="us-gaap_NetAssetsGeographicAreaMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_GeographicConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_US" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_NetAssetsGeographicAreaMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NumberOfReportableSegments-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet" xlink:label="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment" xlink:label="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract" xlink:label="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="us-gaap_OperatingLeasesRentExpenseNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AccountingStandardsUpdate201602Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeasesRentExpenseNet-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-1-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExtendedWarrantyTerm" xlink:label="gnrc_ExtendedWarrantyTerm-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="us-gaap_CapitalizedContractCostAmortization-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_ExtendedWarrantyTerm-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CapitalizedContractCostNet-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CapitalizedContractCostAmortization-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-2-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedLIBORRateMember" xlink:label="gnrc_AdjustedLIBORRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmendedABLFacilityMember" xlink:label="gnrc_AmendedABLFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LIBORFloorRateMember" xlink:label="gnrc_LIBORFloorRateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThreshold" xlink:label="gnrc_NetDebtLeverageRatioThreshold-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetDebtLeverageRatioThresholdMember" xlink:label="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SecuredLeverageRatio" xlink:label="gnrc_SecuredLeverageRatio-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TermLoanMember" xlink:label="gnrc_TermLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_UncommittedIncrementalTermLoanFacility" xlink:label="gnrc_UncommittedIncrementalTermLoanFacility-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFeeAmount" xlink:label="us-gaap_DebtInstrumentFeeAmount-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="us-gaap_ProceedsFromLinesOfCredit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="us-gaap_RepaymentsOfLinesOfCredit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="gnrc_TermLoanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_BaseRateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="gnrc_AdjustedLIBORRateMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="gnrc_LIBORFloorRateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="gnrc_NetDebtLeverageRatioThresholdMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="gnrc_AmendedABLFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_UncommittedIncrementalTermLoanFacility-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NetDebtLeverageRatioThreshold-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredFinanceCostsNet-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentFeeAmount-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SecuredLeverageRatio-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RepaymentsOfLongTermDebt-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt-n2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromLinesOfCredit-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RepaymentsOfLinesOfCredit-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCredit-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShortTermBorrowings-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-13-stock-repurchase-program-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramPeriodInForce1" xlink:label="us-gaap_StockRepurchaseProgramPeriodInForce1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:label="us-gaap_TreasuryStockAcquiredAverageCostPerShare-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_TreasuryStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchaseProgramPeriodInForce1-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockAcquiredAverageCostPerShare-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TaxCreditCarryForwardStateResearchAndDevelopment" xlink:label="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TaxCreditCarryforwardStateManufacturing" xlink:label="gnrc_TaxCreditCarryforwardStateManufacturing-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit" xlink:label="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense" xlink:label="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance-n2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TaxCreditCarryForwardStateResearchAndDevelopment-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TaxCreditCarryforwardStateManufacturing-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedContributionPlanPercentageOfEligibleCompensation" xlink:label="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EmployerContributionUnderMedicalAndDentalPlan" xlink:label="gnrc_EmployerContributionUnderMedicalAndDentalPlan-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityAndRealEstateMember" xlink:label="gnrc_EquityAndRealEstateMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SavingsPlan401kMember" xlink:label="gnrc_SavingsPlan401kMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="us-gaap_DefinedContributionPlanCostRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionContributions" xlink:label="us-gaap_PensionContributions-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionPlansDefinedBenefitMember" xlink:label="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="gnrc_SavingsPlan401kMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="gnrc_EquityAndRealEstateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_EmployerContributionUnderMedicalAndDentalPlan-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DefinedContributionPlanPercentageOfEligibleCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedContributionPlanCostRecognized-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PensionContributions-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-n2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCompensationArrangementWithIndividualSharesGranted" xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredCompensationArrangementWithIndividualSharesVested" xlink:label="gnrc_DeferredCompensationArrangementWithIndividualSharesVested-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EquityIncentivePlanPlanMember" xlink:label="gnrc_EquityIncentivePlanPlanMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_PerformanceShareAwardPercentage" xlink:label="gnrc_PerformanceShareAwardPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RestrictedStockAndPerformanceSharesMember" xlink:label="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod" xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_The2019EquityIncentivePlanMember" xlink:label="gnrc_The2019EquityIncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_BoardOfDirectorsChairmanMember" xlink:label="srt_BoardOfDirectorsChairmanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="gnrc_EquityIncentivePlanPlanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="gnrc_The2019EquityIncentivePlanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_PerformanceSharesMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="gnrc_RestrictedStockAndPerformanceSharesMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_BoardOfDirectorsChairmanMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromStockOptionsExercised-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_PerformanceShareAwardPercentage-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCompensationArrangementWithIndividualSharesVested-2" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DeferredCompensationArrangementWithIndividualSharesGranted-2" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual" xlink:href="gnrc-20191231.xsd#statement-note-18-commitments-and-contingencies-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmountFinancedByDealers" xlink:label="gnrc_AmountFinancedByDealers-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoteToFinancialStatementDetailsTextual" xlink:label="gnrc_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AmountFinancedByDealers-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:href="gnrc-20191231.xsd#statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DiesAndToolsMember" xlink:label="gnrc_DiesAndToolsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:label="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandImprovementsMember" xlink:label="us-gaap_LandImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_LandImprovementsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_MachineryAndEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="gnrc_DiesAndToolsMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_VehiclesMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_OfficeEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_LeaseholdImprovementsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:label="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:label="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtNoncurrent" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill-3" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits" xlink:label="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits-1" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SelmecMember" xlink:label="gnrc_SelmecMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:label="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="gnrc_SelmecMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory-1" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets-1" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment-1" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill-1" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill-1" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets-1" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets-1" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill-3" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable-1" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits-1" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther-1" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities-1" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther-1" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:href="gnrc-20191231.xsd#statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:label="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommodityContractMember" xlink:label="us-gaap_CommodityContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeNet" xlink:label="us-gaap_DerivativeFairValueOfDerivativeNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeContractMember" xlink:label="us-gaap_ForeignExchangeContractMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeContractTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_CommodityContractMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_ForeignExchangeContractMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_InterestRateSwapMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DerivativeFairValueOfDerivativeNet" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis" xlink:to="us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax-n9" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillGross" xlink:label="us-gaap_GoodwillGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:label="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="gnrc_DomesticMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="gnrc_InternationalMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillAcquiredDuringPeriod-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill-5" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillGross" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillImpairedAccumulatedImpairmentLoss-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherInvestmentMember" xlink:label="gnrc_OtherInvestmentMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MutualFundMember" xlink:label="us-gaap_MutualFundMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_MutualFundMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueInputsLevel1Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueInputsLevel3Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="gnrc_OtherInvestmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:label="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:label="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance" xlink:label="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance-3" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentForeignTaxExpenseBenefit-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit-3" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:href="gnrc-20191231.xsd#statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_RedeemableNoncontrollingInterestMember" xlink:label="gnrc_RedeemableNoncontrollingInterestMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TemporaryEquityAcquired" xlink:label="gnrc_TemporaryEquityAcquired-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:label="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests" xlink:label="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments" xlink:label="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TemporaryEquityNetIncome" xlink:label="us-gaap_TemporaryEquityNetIncome-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="gnrc_RedeemableNoncontrollingInterestMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TemporaryEquityAcquired-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityNetIncome-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments-1" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:href="gnrc-20191231.xsd#statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:label="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:label="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:label="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-5" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax-n9" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedEBITDA" xlink:label="gnrc_AdjustedEBITDA" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:label="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CommercialAndIndustrialPowerProductsMember" xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherProductsAndServicesMember" xlink:label="gnrc_OtherProductsAndServicesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ResidentialPowerProductsMember" xlink:label="gnrc_ResidentialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:label="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="gnrc_ResidentialPowerProductsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="gnrc_OtherProductsAndServicesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AdjustedEBITDA" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-leases-cost-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-leases-cost-details" xlink:label="gnrc_statement-statement-note-10-leases-leases-cost-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-10-leases-leases-cost-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseCost" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseInterestExpense" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LeaseCost-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:label="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FinanceLeaseRightOfUseAssetGross" xlink:label="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseAndOtherAssetsMember" xlink:label="gnrc_OperatingLeaseAndOtherAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:label="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="gnrc_OperatingLeaseAndOtherAssetsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="gnrc_OtherAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_FinanceLeaseRightOfUseAssetGross" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:label="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:label="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeasePayments" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:label="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:href="gnrc-20191231.xsd#statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:label="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:label="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-2" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-n9" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n9" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts" xlink:label="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:label="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual-5" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrual-4" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts-n8" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrual-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ABLRevolvingCreditFacilityMember" xlink:label="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherLinesOfCreditMember" xlink:label="gnrc_OtherLinesOfCreditMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:label="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="us-gaap_ShortTermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="us-gaap_ShortTermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShortTermDebtTypeAxis" xlink:to="us-gaap_ShortTermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ShortTermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShortTermDebtTypeAxis" xlink:to="gnrc_ABLRevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShortTermDebtTypeAxis" xlink:to="gnrc_OtherLinesOfCreditMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShortTermBorrowings" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details" xlink:href="gnrc-20191231.xsd#statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" xlink:label="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtAndCapitalLeaseObligations" xlink:label="us-gaap_DebtAndCapitalLeaseObligations-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="us-gaap_DebtInstrumentUnamortizedDiscount-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherBorrowings" xlink:label="us-gaap_OtherBorrowings-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentUnamortizedDiscount-n9" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCredit" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherBorrowings-1" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtAndCapitalLeaseObligations-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtCurrent" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="us-gaap_UnrecognizedTaxBenefits-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="us-gaap_UnrecognizedTaxBenefits-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations-n8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefits-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_UnrecognizedTaxBenefits-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent" xlink:label="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses" xlink:label="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanInterestCost" xlink:label="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:label="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1" xlink:label="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:label="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticEquityMember" xlink:label="gnrc_DomesticEquityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalEquityMember" xlink:label="gnrc_InternationalEquityMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:label="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FixedIncomeFundsMember" xlink:label="us-gaap_FixedIncomeFundsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RealEstateMember" xlink:label="us-gaap_RealEstateMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_FixedIncomeFundsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="gnrc_DomesticEquityMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="gnrc_InternationalEquityMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_RealEstateMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherInvestmentMember" xlink:label="gnrc_OtherInvestmentMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:label="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanAssetCategoriesDomain" xlink:label="us-gaap_PlanAssetCategoriesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="us-gaap_PlanAssetCategoriesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis" xlink:to="gnrc_OtherInvestmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueInputsLevel3Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:label="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-n8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-n8" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod-n8" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:href="gnrc-20191231.xsd#statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:label="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod-n8" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-5" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:href="gnrc-20191231.xsd#statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:label="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:href="gnrc-20191231.xsd#statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:label="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:label="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForCreditLossMember" xlink:label="us-gaap_AllowanceForCreditLossMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryValuationReserveMember" xlink:label="us-gaap_InventoryValuationReserveMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:label="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="us-gaap_ValuationAllowancesAndReservesBalance-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="us-gaap_ValuationAllowancesAndReservesBalance-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:label="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_AllowanceForCreditLossMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_InventoryValuationReserveMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesBalance-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ValuationAllowancesAndReservesBalance-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets" xlink:href="gnrc-20191231.xsd#statement-consolidated-balance-sheets" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-balance-sheets" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasis" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasis-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedCustomerListsNet" xlink:label="gnrc_FiniteLivedCustomerListsNet" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:label="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:label="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:label="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TradeNamesNet" xlink:label="gnrc_TradeNamesNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:label="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue-n8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrentAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_FiniteLivedCustomerListsNet" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_FiniteLivedPatentsAndTechnologyNet" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OtherIntangibleAssetsNet" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_TradeNamesNet" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet-1" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Assets-3" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_ShortTermBorrowings" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities-3" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_TreasuryStockValue-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasis-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_MinorityInterest" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-3" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-cash-flows" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:label="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:label="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromShortTermDebt" xlink:label="us-gaap_ProceedsFromShortTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities" xlink:label="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfShortTermDebt" xlink:label="us-gaap_RepaymentsOfShortTermDebt-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProfitLoss-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_Depreciation-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AmortizationOfIntangibleAssets-1" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_OtherNoncashIncomeExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets-n9" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-n9" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromShortTermDebt" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfShortTermDebt-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDebtIssuanceCosts-n8" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock-n8" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-3" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-4" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-5" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-comprehensive-income-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="us-gaap_InvestmentIncomeNonoperating" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingExpensesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_SellingAndMarketingExpense" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_GeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpenses-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InvestmentIncomeNonoperating" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_ProfitLoss-3" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity" xlink:href="gnrc-20191231.xsd#statement-consolidated-statements-of-stockholders-equity" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity" xlink:type="extended">
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ChangeInNoncontrollingInterestEquityImpact" xlink:label="gnrc_ChangeInNoncontrollingInterestEquityImpact-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:label="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramShares" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_SharesAcquiredUnderStockRepurchasesProgramValue" xlink:label="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:label="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation" xlink:label="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:label="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ParentMember" xlink:label="us-gaap_ParentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod-n8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_TreasuryStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="gnrc_ExcessPurchasePriceOverPredecessorBasisMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_RetainedEarningsMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_ParentMember" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_NoncontrollingInterestMember" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_ChangeInNoncontrollingInterestEquityImpact-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockSharesAcquired-n8" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod-n8" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramShares-n8" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_SharesAcquiredUnderStockRepurchasesProgramValue-n8" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax-n8" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss-2" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest-1" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders-n8" xlink:type="arc"/>
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation-n8" xlink:type="arc"/>
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding-5" xlink:type="arc"/>
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:href="gnrc-20191231.xsd#statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:label="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProFormaMember" xlink:label="srt_ProFormaMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ProFormaMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_CommercialAndIndustrialPowerProductsMember" xlink:label="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_OtherProductsAndServicesMember" xlink:label="gnrc_OtherProductsAndServicesMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_ResidentialPowerProductsMember" xlink:label="gnrc_ResidentialPowerProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:label="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="gnrc_DomesticMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="gnrc_ResidentialPowerProductsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="gnrc_InternationalMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="gnrc_CommercialAndIndustrialPowerProductsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="gnrc_OtherProductsAndServicesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details" xlink:href="gnrc-20191231.xsd#statement-note-7-segment-reporting-segment-information-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_AdjustedEBITDA" xlink:label="gnrc_AdjustedEBITDA-2" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_BusinessOptimizationExpense" xlink:label="gnrc_BusinessOptimizationExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:label="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DomesticMember" xlink:label="gnrc_DomesticMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_InternationalMember" xlink:label="gnrc_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NoncashWritedownAndOtherAdjustments" xlink:label="gnrc_NoncashWritedownAndOtherAdjustments-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_Other" xlink:label="gnrc_Other-n9" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_TransactionCostsAndCredityFaciltyFees" xlink:label="gnrc_TransactionCostsAndCredityFaciltyFees-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-7-segment-reporting-segment-information-details" xlink:label="gnrc_statement-statement-note-7-segment-reporting-segment-information-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanSettlementsBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-7-segment-reporting-segment-information-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="gnrc_DomesticMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="gnrc_InternationalMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_AdjustedEBITDA-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InterestExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DepreciationDepletionAndAmortization-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NoncashWritedownAndOtherAdjustments-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensation-n9" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanSettlementsBenefitObligation-n9" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_TransactionCostsAndCredityFaciltyFees-n8" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_BusinessOptimizationExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_Other-n9" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Assets" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-inventories-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-8-balance-sheet-details-inventories-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:href="gnrc-20191231.xsd#statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DiesAndToolsMember" xlink:label="gnrc_DiesAndToolsMember" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:label="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressMember" xlink:label="us-gaap_ConstructionInProgressMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandAndLandImprovementsMember" xlink:label="us-gaap_LandAndLandImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_LandAndLandImprovementsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_MachineryAndEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="gnrc_DiesAndToolsMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_VehiclesMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_OfficeEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_LeaseholdImprovementsMember" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_ConstructionInProgressMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-n9" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:href="gnrc-20191231.xsd#statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:label="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:label="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerListsMember" xlink:label="us-gaap_CustomerListsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedTradeNames" xlink:label="us-gaap_IndefiniteLivedTradeNames" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_TradeNamesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_CustomerListsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_PatentsMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_DevelopedTechnologyRightsMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_NoncompeteAgreementsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IndefiniteLivedTradeNames" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrual" xlink:label="us-gaap_ExtendedProductWarrantyAccrual-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualCurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ExtendedProductWarrantyAccrualNoncurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrualCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrualNoncurrent-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ExtendedProductWarrantyAccrual-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:href="gnrc-20191231.xsd#statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_NetIncomeLossAvailableToCommonStockholders" xlink:label="gnrc_NetIncomeLossAvailableToCommonStockholders-3" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:label="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestChangeInRedemptionValue" xlink:label="us-gaap_MinorityInterestChangeInRedemptionValue-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestChangeInRedemptionValue-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_NetIncomeLossAvailableToCommonStockholders-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:href="gnrc-20191231.xsd#statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:label="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsDeferredIncome" xlink:label="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsInventory" xlink:label="us-gaap_DeferredTaxAssetsInventory-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities-n10" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsDeferredIncome" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsInventory-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsOther" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance-n8" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsNet-3" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredIncomeTaxLiabilities-3" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilities-n10" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:href="gnrc-20191231.xsd#statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased" xlink:label="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased-n8" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased" xlink:label="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased-n9" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:label="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:label="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanActuarialGainLoss" xlink:label="us-gaap_DefinedBenefitPlanActuarialGainLoss-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligation" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligation-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid" xlink:label="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:label="us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFairValueOfPlanAssets" xlink:label="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanFundedStatusOfPlan" xlink:label="us-gaap_DefinedBenefitPlanFundedStatusOfPlan-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanInterestCost" xlink:label="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid" xlink:label="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid-n9" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligation-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanActuarialGainLoss-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanBenefitObligation-5" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-4" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid-n9" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased-n9" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFairValueOfPlanAssets-5" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanFundedStatusOfPlan-3" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:href="gnrc-20191231.xsd#statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="gnrc-20191231.xsd#gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:label="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>15
<FILENAME>compgraph02.jpg
<TEXT>
begin 644 compgraph02.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_X0 L17AI9@  34T *@    @  0$Q  (
M   *    &@    !'<F5E;G-H;W0 _]L 0P ! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M_]L 0P$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!_\  $0@!\P/0 P$B  (1 0,1 ?_$
M !\   $% 0$! 0$!           ! @,$!08'" D*"__$ +40  (! P,"! ,%
M!00$   !?0$" P $$042(3%!!A-180<B<10R@9&A""-"L<$54M'P)#-B<H()
M"A87&!D:)28G*"DJ-#4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T
M=79W>'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>HJ:JRL[2UMK>XN;K"P\3%
MQL?(R<K2T]35UM?8V=KAXN/DY>;GZ.GJ\?+S]/7V]_CY^O_$ !\!  ,! 0$!
M 0$! 0$        ! @,$!08'" D*"__$ +41  (! @0$ P0'!00$  $"=P !
M @,1! 4A,08205$'87$3(C*!"!1"D:&QP0DC,U+P%6)RT0H6)#3A)?$7&!D:
M)B<H*2HU-C<X.3I#1$5&1TA)2E-455976%E:8V1E9F=H:6IS='5V=WAY>H*#
MA(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&Q\C)RM+3
MU-76U]C9VN+CY.7FY^CIZO+S]/7V]_CY^O_:  P# 0 "$0,1 #\ _OXHHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH *\=^/O[0'P9_9<^$GC+XZ_M ?$/PY\+/A-X TY=2
M\5>-/%%VUMINGPS7$-G96L,<4<U[J>JZI?W%MINC:+I=K>:MK&IW5KIVF65U
M>7$,+^Q5_(/_ ,'=.IO<_"'_ ()N_#WQGJ%SIG[/?Q!_;K\*6/QUG_M.?3=)
MGT/3]+A6TMM;,<L%O)9Q:!J?C;5DDNI52RGTE+R,I)$)H@#]+_V4_P#@X?\
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
M=6%U^EG["_\ P5?_ &_/#W[2GQ3_ ."7W_!2_P#9Z\%:#^W9X)_9<^(GQ.^
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
M&DV >ZUG6-<U?4K&PTRRM?\ 72W"R/)%;)-/'\,^$O\ @N%^P-XV_8)^(?\
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
MIG2G.F:%J-]96[_8UU32_#]RZ+>0:>XK_P#!UO!<G]B+_@GC=:O:01Z]=?\
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
MBP^,M0TR>S=[V.8Z?=:#<:9/IUQI<<*2LVKP0:U%^X5% '\^'[/G_!OE\+_
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
MWHK^8(_\''?Q(R=O_!%?_@J.5R=I/P6UY21G@E1X98 D=0&8 \9/6N)^(?\
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
M\;O$G@9+[]H+X9^!_A5\1X=7U.RN_#?PY^)M_P#%KP==:5!)&VDZWI/B[5O
M7PTU=O[0MI=EYIFI^#].N=.O;:XC26^M&MKR;V"@ HHHH **** "BOD#]N3]
MJ_4/V+_@!K/QQTO]GSXY?M-W^F^(/#OA^V^%G[/GA*;QCX]O'\07C6QUF73;
M<236OA[24C:35-3CM;PV\DMG";8BY,T/X@?\1'?Q)_Z0K?\ !4;_ ,,OKW_S
M,5]MP]X=\8<58"69Y%E5/&X*.(J865:>:9/@FJ]*-.<X>RQ^886LU&-6F^=4
MW3=VHR;C)+FJXO#T)<E6;C*R=E3J2T>BUA"2_&Y_3]17\8'_  V[\>/^"HW[
M;_C71;V;_@I5_P $VOAS\(OV3/AIK.D_!.'XA^(OV<_$_C#QSXC^,OQ0T_7/
MBE?65GH$5SXDT#4O#]KH/A/3+FXC:"UU'PCJL=M(KBZ5ONG]@ _%WX2_\%2?
M"_P2OOVJ_P!K+XX_"[Q_^P3\?/BGK/A']H_XW:Q\8-.L/'O@+]H+]FKPEX:\
M0^'5UBPLVT.\M?#_ (X\3Z=<&U)^UQ:F_G9\N,+\SFN5X[)<PQ>59E16'Q^"
MJNCB:*K4,0J=1)2<56PU6M0J:23YJ56<=;7NF;PG&I",X.\9*\79JZ]))->C
M29_2M17XL?M[?\%?_%7[$OQR3X+>'_\ @G%^W3^U# OA#0_%-Q\3O@7\+-2\
M0?#=Y=<>]"Z%INO66GZJFH:GI268&LQ.MF]E<S);^5*N)G[OXA?&W]I_]M;_
M ()O:5\9OV8O@[\?_P!GWXL>-M?\*W_B/X'^.[O1O@5^TI)\,O"_Q1M=.^,7
M@OP!XK\86USH7P_^(?CGP#I/B"+X7>.==BTJW@;5=*U9+SP]<W%MJ5CZV8<'
M\197D>7\28[ 1HY-FDJ,<#BUCLNK2K.O2J5Z5\)0Q=7&T>>E2J2O7P])+EY9
M-2<4\XUZ4ZDZ,97J0NY1Y9JUFD]7%1>K6S9^ME%?S!?M!_M&Z)XB_8L^%OPW
M^!>O_MR?M$?$[1_VR+G2_B!^Q7\8M>\1>$?VROB!X2^#GAIOB=\>_P!FGQWX
M_P!$E\/:Y9:%X(\":YH?Q-TCQ?J/B_Q58>/[,^"? EGXM\=6WC32;&Z=X>_:
M?M?"'_!'7]LOPW\&OVCO&GC/XF_"#]G;7_VB+'XJ?#CQ5XVU_2_@9H/[0WCO
MXG>(?AS\!_AY\3?%U_<?%V[\7? 'P_X8OO!=Y8>/-,T?Q_HD=CHQO-(TA[VT
M\/Z3\R;']/=%?CO_ ,$V?$'Q%U?XS_M%V_@[QC^U_P#$;]BV#P3\';GX7>,/
MVU=&^(VF^/Q\=;F^^(*?&'1/AKJ/QJ\-^$_C)XA^&=KX:A^'%Q>7?BW2I_#U
MAXMGO[7P-J=S:2ZQ!:^5^%-?\:?LV?M87OBO]K&;]N_3M1^,O[4?Q_\ "/[-
MFO77[0ECXX_8M\667B*U^(/B3X)_#2]^$7A#XH:WJ7@&_P!0^'6D/;^$;?QQ
M\,]&T]/&>E*HU*WU.*R$@!^[E%?RM1?M#?M,?L[?LO\ [&__  4)_P"&DOC'
M\7_B)^V!\&_C[X]^+GP<\>^)H-?^!MKJUS^R!\:?VG_AZ/A5\,H]/CLOACIW
MP@\4?#CP_P"%RWA&:SD\1^#9=97QD^JZO>QZG;?<W[,,7Q?^ G[2_P"Q#X7U
MS]I[XZ_M"Z/^VA^R5\6OB+\8M*^-'C&T\8Z1IOQ:^'&F_!#QE8?$CX5Z9%I=
MG'\+O#FIGXE>+?#-]X$\+O;^"%TZ\\)1VVFQ:AHL5Y> '[?T5^)_Q0_;2^)?
M[,_Q:_X*K_$.72/$/QNT+X%:K^P!I7PQ^"MYXWC\+:3:WGQLT;2/"?B"R\,:
MOJECJFD^%Y]:UOQ+;Z[?S7%D+'4-1LH1J%Q9Q2/>V^UJ/_!33XY^%M;\>_ G
MQG^RGX+L_P!L#3?CG\!_@K\-?AKX>_:$N=;^#GC1_P!HGX??$#XH^$?%GB#X
MR7OP?T37_"&G^$/!WPE^)UYX^TV+X5>(-0CN_#5A9^%1XC;Q'8/$ ?LM17\Y
MOPO_ &_?B?\ LT:1^W#XP^.'PV7_ (73\0_^"HNA?L[?#WX2O\5?%WCOX:>%
M?$6J?L=? CQK<7-AX_\ #?PW\2^++'X56GASPSXP^(*V_ASX.OXFEN+TV$W@
MBTUW4]0GA]]US_@L)<?##]GW1?VGOCA^SKKO@[X-Z#\<?'/[/WQC\4Z#JWC*
M\?2?$\6@:??_  2\>?"+P_X^^%OPT\5_%'X5?&3Q1JND?#F77M0T'P3K'@3Q
MIK,$.J:)J>@:/XD\0:4 ?MK17SI_POB;X=_ GP1\6?VD_"M[\,/$FN:3X<;Q
MEX'^'NE^//CRW@WQ5X@LS>2>%[>Y^'7@.]U_Q%'H[+)8:AXAM?"EIHWVNWE=
M)Q:2VD]QS?[2G@'1_P!H+]GZZU;2_B9\=?AE96GA>[^)WAKQ'\&OB)X]^!7C
M6ZV>$-2O]'L]>GTO^Q/$L>FR1WT-UJ'A77[.VDAU"WMEU/3X+VQ,48!]7T5^
M"W[*GQA^(/[./[$G["_B+PSJWQN_;!_:J_X*">'OA!9>%]!_:1_:3\5WO@ZU
M\=M\#=?^+_Q#\3WOC?Q-I'C>?X9>!-'\*>&_%>O:EI?@_P (:_JFN:E!H>B:
M9HMS<2QW%M1UC_@H1^V?\0OVCOV4_A!X%^%OPI^%_CC0OVN_CM^S1^UC\*_$
M7Q=O_$'A'Q#KG@_]D_5_CYX-N_!WQ'L/@9J.MWW@'5O!>M^'?B/H6L6_A_P5
MXP7Q9I5MX"\4>'[31[O4]40 _?>BOR:T'_@I[I-Q^WGX)_8LUNS_ &?-3N_B
M;XL^+W@GPQ_PJ;]I&+XH_%SP7K'PG\$ZWX]^U_&CX96GPWT31/ ]CXGT3PIX
MEM?L>E?$+Q/K7A/Q!%H^B>(-/$VI7,^F^*?!/XD_$31_^""7Q%^*>F^.?%UO
M\3/#G[*W[8WB?0?B ?$&IW/C+2O$?AK5OC7<^'M;LO$5Y<SZG'JNB3Z?8/I-
MVUR9;%K*T6!HTMXE4 _="BOYA?V0_P!M#Q=^SVW[77Q@^(GB#]L^;X"_LZ?L
M8? _XF>.O@?^VGXVTWQY\>O$WQU\?WFKW&A?$/X(7LFM^-M2L/@=\0-'LX_!
M_P!ON_&]YX?/CR"]CM_"WA^]T#7#?^E_'K_@J5^U5XC_ &2_VJ];^%GPG\,_
M"GXQ_!K0/@%XST'XGZ;K'Q3UWX2S^'OB;\4K#P;XF\+:?K_QB_9?^'\EY\5_
M"5Q:M8:YX9/@;5?#MUX4\3Z?XJT?Q7'?)'IL0!_1?17YM>-?VY/'WPMTG]LJ
MS\?_  A\)2>.?V.OV-?"W[4NO:;X/^).L:KX7\9ZWXATCX\:M/X!TG7-8^'>
MA:MINE6*?!FVAC\6W?AV>ZNF\1SNWABV&D1C4_.M$_X*'_&[Q5XQ_:ED\/\
M[,O@P?!C]DOX3:!\0_'?Q&UGX[W-GXH\2>(/%W[*?AW]I+0?!_@_X=V/PJU,
MR0V-YKT7A+Q)XBUSQ1H]O;V$]CK^AV&NW8U+P_IX!^M5%?F!^R%^WC\8OCM\
M5_ ?PQ^.'[-GAWX%R?&S]E+3?VO/@M?>%_C;%\7[F]\ C7/ WA_Q)X7^(]HG
MP[\#6GA'QKI%U\2/!]]8Q>'M2\;>'M5T^\U)%URVO=*>"Y_3^@ HHHH ****
M "BOA7]OK]M;5?V'/A;X;^(^C?LO_M$_M4WWB3QC;^$T\%_LZ^"[CQCKNB1R
MZ;?:E+K_ (C6V2XETO1E6R^QP7(LKA;B_GAMF>#<'/AG[%?_  5 UW]KOPK\
M>O$FN_L(?MH?LZW'P.\(CQA!H7Q?^%UYI&I?%2$Z;K=__P (W\,5NTTL^(?&
M;R:(UE#H$<:B2?4=+#7L9NPJ<LL;AHXCZK*HU7:<N3V=1Z*#FWSJ')\*O\5^
MF^AQ3S#"4\2L'.JUB'%R]G[*LURJ#J-^T5-TU[BO9SOTM>R/U=HK^<+X%?M,
M_M&?\%9O&'Q:\2)XR_:<_P""=GP8^ ^L^'_AU:? ?0[3P]\/_P!I3Q1\1M6\
M-V7C/4O'?Q;U[Q-X6US5?#?@^+1M:T2R\"^#-#L;&UUT+J^L:YJ.H(MK90<-
M+_P6+_:,_8K^)/Q8_9"^*W[*_P"U7_P43\5_!+Q!H:Z7^T7^SS\-;._N-8\
M^.?"6B^,?!.B?&/2/"&@CP]H_P 6M$L]1N],UV\T>UTO3O$UE:Z=X@BT?3KJ
M\O(F\6EQ3E=7&5,)>O%0ORUY4I.G4E%VE&,8\U:+WLYTHI\LKM:<WS]'C/)J
MV/K8%/$05+F4<3*A)T:LX/EE",(<V(33YK.=&*?+*_+[O-_3M17Y1?M"_P#!
M4'6O@9^RO^S[^TMI/["'[:?Q8U+X]):O)\$? _PKO+KXI_"82Z/+JLZ_%?18
M!?W'A>7=']CT^.2TE^WRD[VLW41-7_:K\;_M-_M'?L:_L^_&']GCX=?M)> [
M#Q5XP\ _$;]H;X$^$?$&B? K]LB;X$3^'O$<OB;P)\/]=\375I9^%OB5I'BJ
M;PAK^H:+#XB\*:_XL\*Z)K?A/0O$6D:OX@MHI?<IXJA5J.E3GS5%3A5<>2:_
M=U%&4)<THJ+NI1=D^97U2LSZ.EC,-6JNA2J.56-*%9Q]G4C:G4490ES2@HNZ
MG%\JES*_O)-.WZRT5_+-^US^T]X1\5?LY_L61_!K6?VJ?VU?#?@3Q%^T5X[^
M/W[.7C?7_B)\+OC[J_PG^#.F>*?AAXQ\2?M-^(OAUI'AGQS8S?LF_&OQ#X'L
M]?\ "SZ#XC\4?$UM/NM1T;0_B)X@TNVU6X]!\?\ [1]GX1_X)(R^!? 7[6'Q
M>^*>N?LY?$_]A+X0?%G]K;X,:]XPO=8\=:/\8?BO\ ?&7BRR^"7Q \+ZIXK^
M)/C)-,^$GQ4M_A_'<8O/B).$BTS5X-0\2S7;3=!U']+%%?E?_P $Q]:^*^KM
M^T\NH>(?VFO&?[+UE\4_"T?[)?C+]L#1O%&C?'+7/#DWP[T*;XKQ3#XBZ%X8
M^*^J_#K3/B>=5M?A_K7Q/T*T\2W4#:O:V=QJ/AFPT&^G_,W]AO\ X* _&GX!
M?!#]I:?]HKX@^.?CSXF\;Z#\6_VD/V.U\<:C/K?B'Q7J\7[37Q _99O?V:-"
MU26..>XL_#'Q;T[X+#PWI:-?WFE:#\:(5REAIMO$ #^H*BOYQ?V./C3\:_AA
MX2^$G@7]I7XQ_&/XY_$:T_X*S_M$_L^>(OB!-\5M2\/6"P>%?@-\0O'VJ6>O
M:#;:!JD/CCX4Z'JGAW6K;P?\+C)X>TW1WF\/:O:Z@)/#D.G7W&?&7_@H9^T[
MXN\2_L,_M<_\,]VW@#X$:S\.OVY_VCO@?9>'_CM?>,/$7Q@\)>#?V%OC'\1?
MAOH/QL^&-CX,\'V7AG6O%EOIFC>+M%T;2/$GQ)L= E=[34-4TOQ%9VIF /Z;
M:*_+3]D+X*^.?#GPH^&7[8WQ%_:Y_:'^-'Q+\;? RT^+'Q$\-^+OBYI&@_LQ
M^(]3\=_#ZU\726/AWX:RZ$?!'PH\%>%+R[@'A#6O#;Z;J.F:38QWOB[6_$ZW
M.LO?_.?A7_@M%IFJ^"OVW=4;P5\#/B9XP_8]_9MTG]IA;7]FC]I-OC+\.?&6
MAZK=>-=)?X=:C\1K[X5^!HO#7Q TK6_ ]W#<2V6A>)O"VI:-K6A:]IFM2P3W
M5M; '[KT5^?G[.7[7?QD^('[0WB_]F[]H;]GOP]\#_&R?!;PU^T9\,;[P5\8
M5^,FA>*OA9KWBN]\$ZIIGBJ^;P!\/W\(_$CP=XC@TZ'6M%T^#Q1X8U.PUNSO
MO#OB[4A:ZC#:_FKXJ_;W_P"%J_\ !3C]E?4/!'[5WACPQ^SGH_[07QW_ &5(
M_@GH?Q4\)V$7QD\3^"/@;\4=0\>_$WXD^'%U8:C=Z=8_&_P]X:^$OP4TS4(H
MTN=8\*>(_$6G)=MXY\/H #^BVBOY<O#WQ_\ VC_A'^SK^QI_P4>N_P!HKXS?
M$[Q]^U?XF^,I^+'P!\6>*8M3^ "^'M;^!G[17Q8\!>%_AG\+HM-BM_AW<?!W
M5OA5X)T^/7_#-S;Z_P"(]&L?%K>-+K5[K7II[/ZH_94O/C5\(OC%_P $U]<\
M1_M0_'/X\#]O[]G?XF^,?CSX9^+/B^S\3^"+'XAZ+\)O ?QOT3QU\&_"\.EV
M=M\)-#TG4->\1^"6\+>$9;?PK=^'-<\-0WUA-J^C66I3@'[RT5^+7QG_ &S?
MB'^S#\;/^"JGQ+N+#Q#\8/"?[./P(_88\7_#_P""5QXQ7PWHIUOXB:G\9=$\
M4P>'-1O[+4],\,ZEXKFM]"EU'4)K%K6\N-&TU=0EMX(C=0:&N_\ !3;XX> -
M9^*/P7^)G[*/A'2?VJM'^(O[+_@'X-?#7PI^T&_B?X9?$9_VM[CXD0_#V_\
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
M_"V[^+6BZK82^'_$/P_\8?&/1=*UB+4=$NGOO(M-1O0#]NJ*^ /V"?VZ[/\
M;\\,^-?BI\/_ (<7WA'X,>&;_1/ >E^(_$NN*?&&L_&71M.:7XY^"+GP?!I2
M0:7HOP@\2W6G^ H_%RZ]?VWCCQ/I_BF[T"Q7POIVBZ]XA^_Z "BBB@ HHHH
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
M,GF_C1_P3]_9Q^/FK>,-=^(FD^+[C6?&/PD^%/P?;5M!\;:[X8U;PMI?P/\
MB/K?Q;^%'C+P-J^ASV6J>$_B5X(^(6NS^)-&\::7>1W\=U:6$,R2V<,MO/\
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
MSXH^#?CGX9:UHDMM?>#?&GA;6OB)XFG?6+.6:/5[:Z33-6L[S3#<6=Q]LT4
M?G3H7_!+S]F/0_ /Q1\#_;OC9K6H?%OXN>!/V@/$GQ1\2?&SQ[KGQGT[XZ_#
M70/#/A[P=\6?"WQ.OM3D\2^'?%NE6OA+2)(UL;D:"T?VW13H@\+WUQH#^B7O
M["/P:\5:5\.-$^+FO?%GX_:3\-O&/C#X@6VD_';XBZI\1]$\6>,/%_A.]\$?
MVMXT\.:K"GAS5;;PIX:U35[/P/X;L=)TKPGX8OM7U'7['0?^$BN/[67[2HH
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
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5\!?M'?\G%?!?Z^$
M/_4[GK[]KX"_:._Y.*^"_P!?"'_J=ST ??M%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %? 7[1
MW_)Q7P7^OA#_ -3N>OOVO@+]H[_DXKX+_7PA_P"IW/0!]^T444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 5[N[M;"UN;Z^N;>RLK*WF
MN[R\NYH[>UM+6WC::XN;FXF9(H+>")'EFFE=8XHT9W954D?D)\*/^"T7[-/Q
M5_:+LOA%;>'/'/ACX,>/O$UW\-_V?/VP/$MO8V/P"_:"^+FAS/;^(OA_X*U9
MYEU'3!<72R6'PX\5^(+>R\,_%K5-+\0:?X)OKV>QTS^W/GG_ (.-/VJ/@=\(
M?V#O%_P)\6?%#QCI'QW_ &@)M!TKX(?!;X61OK7CGXT:II?B;2[B7P9XO\,:
M?<VFK7'P2\6S1KX3^([0:CH]WKFEZE/X=\/W.HZW=QZ/=?F1I_B'XL_MO?#S
M3?\ @G1H?[&FJ_![]I[Q!X+\/:'\=OA=\8? NHZ=\&?V-?AR^EZ7=Z/\:;K5
M]/73K#Q'I<D#6US^SWX7\$ZO:^+-2\9:<=.OYO#C>#O$5[;_ -$^&WA3D.=\
M'8_BKBVMBL!A<9/,,+E^)J5HY=1RG+\MA@Y8OBJG&O*,LZPM#&8J&7SA3A]1
MIU:=;+JE1YIF673PGQG$>?9SEV/RG"9/E/\ :<,1BH4\?.,U>A":DXTW;2A*
M4%.M[:K^[4::B]:B/[0**\M^"'PVO/@Y\'?AA\*-0\?>,OBG??#GP)X8\&7G
MQ(^(=]%J?CGQQ<^'=(M=+F\3^*K^"&"*[UO6)+9KV^F$99II6WR32;II/4J_
MGNO"G3KUJ=&LL11IU:D*6(5.=)5Z49N-.LJ51*I356"4U":4X<W+)<R9]DFV
MDVK-I76]GU5UH[;704445D,**\'_ &A?B;JWPL\%Z9K&F-8:3!K/BG2O#.L^
M.]:T^_U;PY\,M(U6&]:?QSXATO3G@N+[3K">VMM.CCEOM+TV'4=4L;K5]3M-
M+@NV:SIVK_$2\^&6@ZOHOQ ^$>O7T&G7]WJ_Q(DT_4]3\%ZYIFFQ7(M=:LM-
MT/Q+806C:BD"7.MS0^)[G3M&E2]6QBU&#REA /;Z*^)_#_[1GQ+^(GABXUWP
M7X5\*>'[WPM\$_"7Q=\6:7XO&NZA_:E_XPM?$.IZ1X/\/W5A/HG]DVUQI/A>
M\OSXKU&#6&@36-'5O#$OEW9,5W^U!XLUKP;\0/BOX)T#PZO@#X5>'?!/B+Q#
MH_B"/5I/%7BA?$'@OP_\1?$.GZ)J=I>6.E>'9O#_ (7\26$%A=7FF>)8M;UU
M+FVEBTBSB2ZF /MVO@+]H[_DXKX+_7PA_P"IW/7WO;W$=U;P74))AN88IXB0
M5)CF19$)!Y!*L"0>1TK\VOC+XZ\+^-/V@/A=>^'-3%[:Z#JWAO1=6FEM;RQ2
MSU&Q\<2R74+&_M[;>D*.K-<1;[8C)$IP< 'Z5T5@KXJ\+OLV>)-!;S/)V;=8
MT]M_VA7>WV8N#N\](I'AQGS5C=DW!&(1?%?A=]FSQ)H#^9Y.S;K&G-O^T(\L
M&S%P=WGQQR20XSYB1NZ;E5B #?HK!7Q5X7?;M\2:"V_RMFW6-/._SXWF@VXN
M#N\Z*.26+&?,CC=TRJL0+XJ\+MMV^)-!;?Y>S;K&GG=YT3SP[<7'S>;!&\T>
M,[XD>1<HI( -ZBL$>*O"[;=OB306W^7LQK&GG=YL+7$6W%Q\WF6Z//'C.^%6
ME7**6 /%7A<XQXDT$[MFW&L:>=WF0-=1X_TCGS+9&N$Q]^!6E7,8+  WJ*P!
MXK\+G&/$F@'.W&-8T[G?;FZ3'^D\[[56N5_O6X,PS&"U+_PE7A<X_P"*DT'G
M!'_$XT_G=;F[7'^D?Q6H-R/6W!F'[L;J -ZBL#_A*_"__0R:!V/_ "&-.[V_
MVL?\O'>T!NAZV_[[_5_-2_\ "5>%_P#H9-!]?^0QI_06_P!K)_X^/^?3_2?^
MO?\ ??ZOYJ -ZBL#_A*_"_\ T,F@>O\ R&-._P"?;[9_S\?\^G^E?]>W[_\
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
MO_T,F@<\C_B<:=S_ *-]L_Y^/^?3_2O^O;]__JOFI?\ A*O"_P#T,F@]"?\
MD,:?T%L+PG_CXZ"T(NB>UL1.?W7S4 ;U%8'_  E?A<=?$F@#&XG_ (G&G<;+
M<7;_ /+Q_#:$73?W;<B8XC(:@^*_"XSGQ)H QO)SK&G#'EVZW<F?](_@M66Y
M?^[;LLS8C(:@#?HK!/BKPN,Y\2:"-OF;LZQIXQY4"W4N?](X\NV=+B3/W(&6
M9L1L&(?%7A=<AO$F@@KY@;.L:>,>3 ES-G-QQY5LZ7$F?N0.DK8C8,0#>HK!
M/BKPPN[=XCT$;?,W9UC3QM\J!;F7=FXX\NW=;B3/W(&65L1L&(WBKPNN[=XD
MT%=GF;]VL:>-ODQ)/-NS<?+Y4$B329QLB=)&PC D WJ*P6\5>%UW;O$F@KL\
MW?NUC3QL\B))Y]V;CY?)ADCFESCRXG21\(RDHWBOPNF\OXDT!0GF[RVL:<NS
MR$26??FX&WR8I(Y)<X\M)$=\*RD@&_16 WBOPNF_?XDT!?+\[?NUC3EV?9U1
MY]^;@;?(26)YLX\M9$9]H=25;Q5X73?O\2:"OE^<)-VL:>NS[.$:XWYN!M\A
M98VFW8\H2(7VAUR ;U%8#>*_"Z;]_B30$\OSO,W:QIR[/L_E_:-^;@;?(\V+
MSLX\KS(]^W>N5;Q5X83?O\1Z"GE^=YF[6-/79]G*+<;\W V^098Q-G'E&1 ^
MTNN0#>HK!;Q5X73?O\2:"GE^=YF[6-/79]G9$GWYN!M\AY(TFW8\MI$5]I=0
M4;Q7X73?O\2: GE^=OW:QIR[/L[I%/OS<#;Y,DD<<V<>6\B(^UF4$ WZ*P&\
M5^%TW[_$F@+Y?F[]VL:<NSR'2.??FX&WR7DC27./+>1%?!=01O%?A==V[Q)H
M"[/-W[M8TX;/(D2*?=FX^7R99(XY<X\N1T1\,R@@&_16"WBKPNN[=XDT%=GF
M;]VL:>-ODRI#-NS<?+Y4TD<4F<;)72-L.R@A\5>%USN\2:"-OF;LZQIXV^3,
MMO-G-QQY4[I!)G[DSK&V'8*0#>HK!/BKPNN[=XDT$;=X;.L:>-OES+;2;LW'
M'EW#K ^?N3,L38<A2A\5^%QG/B30!MW[LZQIPQY<ZVSYS<<;+EEMWS]V=EB.
M)"%H WZ*P3XJ\+C.?$F@C&[.=8T[C;.+5L_Z1QMN2+=L])R(3^\.VC_A*O"X
MSGQ)H(QG/_$XT_C%P+4Y_P!(XQ=$6Q]+@B'_ %GRT ;U%8'_  E?A?\ Z&30
M/3_D,:=_S\?9/^?C_GZ_T;_KX_<_ZSY:7_A*O"_'_%2:#S@#_B<:?SFX-H,?
MZ1WN@;8>MP##_K/EH WJ*P/^$K\+G&/$F@'.,?\ $XT[G-Q]E&/](YS=?Z,/
M6X_<_P"L^6E_X2KPOQ_Q4F@\XQ_Q.-/YW7!M%Q_I'.ZZ!MAZW ,(_>?+0!O4
M5@_\)5X7.,>)-!.=N/\ B<:=SON#:IC_ $CG==*ULN/O7"F$9D!6@>*O#!V@
M>(]!);9MQK&GG=YD[6L>W%QSON5:W3'WIU:)<R K0!O45@CQ5X7;;M\2:"=W
ME[<:QIYW>;,UM%MQ<<^9<(]O'C[\R-$N74J!?%7AA]NSQ'H+;_+V;=8T]MWG
M3-;P[<7!W>;.CP1XSOF1HURZE0 ;U%8*^*O##[=GB/06W^5LVZOI[;_/D>&'
M;BX.[SIHY(HL9\R1'1,LK "^*O"[[=GB306W^5LVZQI[;_/D>*#;BX.[SI8I
M(XL9\R2-T3+(P !O45@KXJ\+OLV>)-!?S/)\O;K&GMO^T,Z0;,7!W>>\<B0[
M<^8T;JFXHP OBKPP^S9XCT%_,\GR]NKZ>V_[076WV8N#N\]HI!#MSYIC<)N*
M-@ WJ*P$\5^%Y-GE^)- ?S?)\O9K&G-YGVEI$M]F+@[_ #WBE6';GS6CD5-Q
M1@%7Q5X8?9L\1Z"_F>3Y>W6-/;S/M)D%OLQ<'?YYAE$.W/FF*0)NV-@ WJ*P
M5\5>%WV;/$F@OYOD>7MUC3F\S[2)#;[,7!W_ &@12F#;GS1%)LW;&P+XJ\+O
MLV>)-!?S/)\O;K&GMO\ M*R/;[,7!W>>D4K0[<^:L<C1[@C$ &]16"OBKPN^
MS9XDT%_,\GR]NL:>V_[0CR6^S%P=WGQQ2O#C/FI&[)N5&(%\5>%WV;/$F@MY
MGD[-NL:>=_VB-YK?9BX.[SX8I)8<9\V.-W3<J,0 ;U%8"^*_"[[=OB30&W^5
MLVZQIQW^?$\\&W%P=WG01R318SYD2/(F45B%'BKPNVW;XDT$[_*V8UC3SN\^
M%[F';BX^;SK>-YXL9\R%'E3**6 !O45@CQ5X7;;M\2:"=WE[<:QIYW>; UU%
MMQ<<^;;(]Q'C[\"M,N8U+!!XK\+G&/$F@'.S&-8TXY\RW:[CQ_I'/F6JM<I_
M>MU:9<Q@M0!OT5@CQ5X7;&/$F@G(C(QK&GG(EMFO(B,7'(DM$>ZCQ]^V1IUS
M$I8(/%?A<XQXDT Y"$8UC3CD26QO8R/](Z/9JUVG]ZV4SKF(%Z -^BL$>*O"
MYY'B303P#QK&G]&M3>J?^/CHUD#=@][4&X'[KYZ/^$J\+]?^$DT'IG_D,:?T
M^R_;<_\ 'QT^Q?Z7G_GU_P!(_P!5\] &]16"?%7A<9SXDT$8!)SK&G\ 6HO2
M3_I'061%V3VM2+@_NB'I#XK\+C.?$F@# 8G.L:<,!+87KD_Z1P$LR+MB?NVQ
M$YQ$0] &_7XR?\%7?^"NO@_]@32_#'P3^#_A2;]H?]O;XY&#0_V?_P!FSPM'
M<:QJDFIZU*]AI7C'Q_9Z2_\ :.E^$H;S>UCIZ-:ZKXMGM+FTTV6QTRTUKQ#H
MGG7_  5?_P""Q5K^R;J'AG]D?]C?PY8?M)?\%%_CG%%I7PO^%6@3VNLZ)\+;
M;6(&-I\2/BO+!<)9:?96=H9=:T?P[J=]IL5]I]G-XB\27VB>#K674KRO_P $
MHO\ @E?X2_8\U/Q1^US^UM\5=!_:1_X*0_'%;S6OB]\<?$>O6.LVWP_75K.*
M^U+X>_"Z2\E1-.TVPTU[>TUWQ':6NGRZKIUM;Z=I-IHG@RVL=(/ZQP[POD_#
MN483CGQ!H3JX#%J57A/@Z-66'S'C"K3DXQQV,E&U;+.$J%56Q.86CB,TE&6#
MRM2;J8FCPU:]2K4>&PKM.-E7Q#5X8=/[,>DZ[7PPVA=2G_*^7_X)@?\ !(#Q
MC\.OBC?_ /!17_@I1XM@_:,_X*/_ !+6/6%O-6DM=7\"_LUZ=<PN++P9\,]/
MB4Z)%KVB6,YTI]<T>WBT?PY )]'\$1QVSZCX@\0_T&B.,2-*(T$KHD;R!%$C
MQQ&1HT9P-S)&TLK(I)5#+(5 +MG$/BKPNN=WB305V^:6SK&GC;Y$"74V<W''
MDVKI<RY_U<#I,^(V#'2L]1L-121]/OK.^2&3RI7L[F&Z2*78DGE2- [A)/+D
MCDV,0VQT;&U@3\5Q1Q5G/%^:3S7.:\)U%2IX3!X/#4HX;+<JR[#KEPF5Y5@:
M5J&!R["0M"AAJ44E[U6I*I7J5:L^FC0IX>')33M=RE)N\YS?Q3G)ZRG)ZMOT
M5DDBY1117SAJ%%%% 'G/Q0/Q+A\+S7OPG?0)O%MC/'-;Z-XFTQM0TC7K>0-;
M36$\T?B'PS-ICP>>NHQW\>IGFR-J]I="YV#P>]_9=U-?AW;?#K0O'VEZ7HNK
M_$?Q'\1OB5I<_@>YD\,^.G\1ZE<ZS<^#+;0M$\9^'+CPMX$&J36\EYH5EK%]
M)K-C9G3M7O;N+4M9DU#Z^HH ^:=9^!GBR_U3Q-KFD_$+1/#FJ?$3X?Z7\//B
M*-/\ SSZ9>:?H4NO1:)K/@FQNO&DDGA+6[#2/$NK:63JMWXPTFX/]GW3Z4IL
M3!<XM[^R[!#8>-O!_A;Q@OA[X8_$K3?!FE>-?"L_AS^UM9-GX2\-:/X*N(O"
M_B?^W;"#1!XF\(>']'T;6#J7A[Q#)!);W&IZ6]C>7;-']844 ,C1(D2*-0D<
M:+'&BC"HB *JJ.P50 !V K\W?C-X+\,^"_VA/A7;^&=+32X=:U;PQK>IHMS>
MW7VK5+OQS*MQ=DWMS<M&9 B@Q0F.!<?+$O-?I+7P%^T=_P G%?!?Z^$/_4[G
MH ^^]BCHJ_\ ?([=.W:C8G]Q?^^1_A3J* &[%_NK_P!\CMP.WIQ1L7^ZO_?(
M[<#MZ<4ZB@!NQ?[J_P#?([<#MZ<4;%_NK_WR.W [>G%.HH ;L7^ZO_?(],>G
MIQ].*-B_W5_[Y'ICT]./I3J* &[%_NK_ -\CTQZ>G'THV+_=7_OD>F/3TX^E
M.HH ;L7^ZO\ WR/3'IZ<?2C8O]U?^^1Z8]/3CZ4ZB@!NQ/[B_P#?(],>GIQ]
M.*-J_P!U?^^1Z8]/3CZ4ZB@!NQ?[J_\ ?([\'MZ<4;%_NK_WR._![>G%.HH
M;L7^ZO\ WR._![>G%&Q/[B]_X1WX/;N!S3J* &[%_NKW_A'?KV[]Z-BGJJ_]
M\COU[=Z=10 W:O\ =7O_  COU[=^]&Q3U5?^^1WZ]N].HH ;L4]57_OD=^O;
MO1L4]57_ +Y'?KV[TZB@!NQ?[J]_X1WZ]N_>C8O]U>_\([]>W?O3J* &[%_N
MK_WR._)[>O-&Q?[J_P#?([\GMZ\TZB@!NQ/[B_\ ?(]<^GKS]:-B_P!U?^^1
MZY]/7GZ\TZB@!NQ?[J_]\CUSZ>O/UYHV+_=7_OD>N?3UY^O-.HH ;L7^ZO\
MWR/7/IZ\_7FC8O\ =7_OD>N?3UY^M.HH ;L7^ZO_ 'R/7/IZ\_7FC8O]U?\
MOD>N?3UY^O-.HH ;L7^ZO_?(]<^GKS]>:-B_W5_[Y'KGT]>?KS3J* &[$_N+
M_P!\CUSZ>O/UHV+_ '5_[Y';D=O7FG44 -V+_=7M_".W3MV[4;%_NKV_A';I
MV[=J=10 W8O]U>W\([=.W;M1L7^ZO;^$=NG;MVIU% #=BCHJ_P#?([=.W:C8
MHZ*O_?([=.W:G44 -V)_<7_OD=NG;MDT;%_NKV_A';IV[=J=10 W8G]Q>W\(
M[<#MV!XHV+_=7_OD=N!V].*=10 W8O\ =7_OD=N!V].*-B_W5_[Y';@=O3BG
M44 -V+_=7_OD=N!V].*-J_W5_P"^1Z8]/3CZ4ZB@!NQ/[B_]\CTQZ>G'TXHV
M+_=7_OD>F/3TX^E.HH ;L7^ZO_?(],>GIQ]*-B_W5_[Y'ICT]./I3J* &[5_
MNK_WR/3'IZ<?3BC8O]U?^^1Z8]/3CZ<4ZB@!NQ?[J_\ ?([\'MZ<4;%_NK_W
MR._![>G%.HH ;L7^ZO\ WR._![>G%&Q?[J_]\COP>WIQ3J* &[%_NK_WR._!
M[>G%&Q?[J_\ ?([\'MZ<4ZB@!NQ3U5?^^1WZ]N]&Q3U5?^^1WZ]N].HH ;L4
M]57_ +Y'?KV[T;%/55_[Y'?KV[TZB@!NQ3U5?^^1WZ]N]&Q?[J\_[(_PIU%
M#=J_W5_[Y'?KVHV+_=7_ +Y'?D]O7FG44 -V+_=7_OD=^3V]>:-B_P!U?^^1
MWY/;UYIU% #=B_W5_P"^1WY/;UYHV+_=7_OD=^3V]>:=10 W8O\ =7_OD>N?
M3UY^M&Q?[J_]\CUSZ>O/UIU% #=B_P!U?^^1ZY]/7GZT;%_NK_WR/7/IZ\_6
MG44 -V+_ '5_[Y'KGT]>?K1L7^ZO_?(]<^GKS]:=10 W:O\ =7_OD>N?3UY^
MO-&Q?[J_]\CMR.WKS3J* &[%_NK_ -\CMR.WKS1L7^ZO_?([<CMZ\TZB@!NQ
M?[J_]\CMR.WKS1M7^ZO_ 'R/\*=10 W:O]U?^^1VZ=NV31L4=%7_ +Y';IV[
M4ZB@!NU?[J_]\CMT[=LFC8HZ*O\ WR.W3MVIU% #=BCHJ_\ ?([=.W:C8HZ*
MO_?([=.W:G44 -V)_<7_ +Y';IV[9-&Q?[J_]\CMP.WIQ3J* &[%_NK_ -\C
MMP.WIQ1L7^ZO_?([<#MZ<4ZB@!NQ?[J_]\CMP.WIQ1L7^ZO_ 'R/3'IZ<?3B
MG44 -V+_ '5_[Y'ICT]./IQ1L7^ZO_?(],>GIQ].*=10 W8G]Q?^^1Z8]/3C
MZ<4;%_NK_P!\CTQZ>G'TIU% #=B?W%_[Y'ICT]./IQ7X)_\ !5__ (*U^(_V
M?/%WAS]@_P#8+\)Q_'__ (*5_'!+;2?!G@C1[6#6M!^!>DZW ^/B5\3F;?I=
MI<Z=89UG2?#^MS6NGVVG1_\ "5^,);/PM!;V^OT?^"L7_!6'QO\ !OQOX;_X
M)Z_\$]O#D?QR_P""DWQTBCTG0M#TF.WU;P_^SOX>UBW<R_$KXCS/YNEV&JZ=
MISMK>DZ/KK0Z9I.F1#Q=XNV:''INF^)/>/\ @E!_P29\#?\ !/#PAXC^(OC_
M ,27'QV_;=^.._Q!^T?^TGXHFN=7U_7]=U>X35M5\)^$=1U;?J>G^"K/53YL
MDLS1:IXKO[>'6M<$:PZ3I&B_KF0<.Y/PCE&#XXX[PD<;/'0^L<%\$UI2IU.(
MI0E:&>9[&+C5PG"6'JQ?LX>YB.(*T)8?"\F!CB,2^&K5J5YRPV&ER\KMB,2M
M51[TJ725=K?I15G*\K1,3_@DW_P2/\,?L#:+XI^-OQH\4']H+]OGX\R77B']
MH/\ :-\2--JVJ'4=>FBU+5O _@2^U,->V'A.UOU3^T-1$=GJ'BV[MH+N^@L=
M*L]#T'1OV=VK_=7_ +Y'ICT]./I3J*_/N(N(\XXKS?%9YGF+EC,PQ<H\TW&-
M.C0HTXJ&'PF$P]-1HX3!86DHT<+A*$(4:%&$84X)(ZJ5*G0IQI4H\L([=6V]
M7*3>LI2>LI.[;=V-V+_=7_OD=^#V].*4 #H /H,?RI:*\0T"BBB@ HHHH **
M** "BBB@ KX"_:._Y.*^"_U\(?\ J=SU]^U\!?M'?\G%?!?Z^$/_ %.YZ /O
MVBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K\"/\ @K3_ ,%7O&7P0\5^
M&O\ @G_^P!H"?&[_ (*4_'I(-%\+>&M&@@UG1?V?_#^M0GSOB;\2)"9--TW4
M-/TQY-;T32M<,>G:;I\)\8>+5C\.6]G9>(;W_!6C_@K)XF_9X\2>&?V$?V%/
M#*?'G_@I5\?8HM%\"^!M%C@UC2?@;H^MV[8^)WQ,PYL=.N;#3WDUO0-#UJ2V
ML(;"W;Q?XM>U\*6L$&O^N_\ !)?_ ().^$_^"?'@SQ'\3OBAXB?XY?MT?'EI
M/$O[2?[1GB.>?6]<U77=9GCU;5/!?@_5M43^T[3P7I^J_O;BYD$&H>+=3@CU
MG6$A@@T71]$_6^'>'\IX2RC"<=\<8.&-EC(NMP5P7B+QGQ)5IR:CG>=TTXU<
M/PEA:L=(VC5X@KP>$PSC@XXG$'#5JU*]26&PTN7ETQ.(7_+E:7I4^CQ$HO?:
MDO>?O<J+G_!)[_@D]X(_X)V^"?$GCSQYXCD^.7[;'QSED\3?M)_M)^)'N-6\
M0>(_$.L7":OJOA3PIJ>JJVJV/@BQU=FN'><PZEXKU.)==UU8S'I.DZ+^P%%%
M?GO$'$&;\49OC,\SS&3QV8XV:G5K2480A"$53HX?#T::C2PV$PU*,*&%PM"$
M*&'H0A2I0C"*1U4J4*-.-.G%1A%627XMO=R;UE)W;;;;N%%%%>,:!15#5-6T
MO0]/NM6UO4K#1]*L8_.O=3U2\M]/T^SAW*OFW5[=R0VUO'N95\R:1%W,HSDB
MO/?^%X_!7_HK_P +O_"_\)__ "VH ]1HJK8W]CJEG:ZCIEY:ZCI]]!%=65_8
MW$-W9WEM.@DAN;6ZMWD@N()HV5XIHG>.1"&1B"#5J@ HHHH **** "BBB@ K
MX"_:._Y.*^"_U\(?^IW/7W[7P%^T=_R<5\%_KX0_]3N>@#[]HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ K\(?^"M?_!6?Q!^S%KOA3]B+]B/PFOQ]_P""E7[0
M$4.D?#7X;Z/;PZWIGP>TO6H9!'\3OB;$)5M++[%8B?6?#^AZQ+:V#V5G/XJ\
M5S67A"Q/]L3_ /!6O_@K9JO[*>K>%/V,/V+_  FO[07_  4J_: 2'1?A7\*=
M$MXM=L?A38ZU"XA^)OQ/MXYD@L8K.S$^L>'M U::SM+RTLI_$WB:?3_!NGSS
MZEV'_!)/_@DOIO[".C^+OCW\??%\O[0/_!03]H1YO$/[0_[07B*ZFUV\MK[6
M)UU&^\!^ ]1U*);VT\,V=UY*:MJBQVEUXJO+*VFDMM/T/3]!T+2?UKASAW*.
M%LHPO'G'>$CBZ.+C*KP7P;6<J=;BK$4I\JS;-8Q<:N$X0P=5/VE3W*N>5X/!
M8)K#K$XB'!6K5*]26%PTG%QTQ&(6U!/7DA?25>2VW5)/GEK:)>_X))_\$G-#
M_8%\,>*OC'\:?%'_  OG]O;]H"XN/%'[1O[1&ORS:SJLNK:Y<)JFH^!O!6JZ
ME&-0M?"5CJ&U]0OMEI=^+-2MX]1O;>STZTT+1-&_9FBBO@.(N(<WXJS?%YYG
M>*EB\PQDTYSY8TZ-&E3BJ=#"83#TU&EA<%A:,84,)A:$84</0A"G3BHQ.NE2
MA0IQI4X\L([;MM]92;UE*3UE)W;>K"BBOA/]KO\ X*9?L+?L*Z7<WG[3O[2/
MPZ^'FLQ6LMS:> DU7_A)?B=JXBB$JII7PY\,)JWB^X68M'&EY)I,&FQR30_:
MKZW1P]<F695FF=8REEV3Y=CLUQ]=VHX++L)7QN*JO3X*&'IU*LK75VHV6[:*
MG4A3BYU)QA%;RG)1BOFVD?=E%?RR7/\ P6[_ ."@'[==S=>'O^"/W_!-KQYX
MG\'74DEG:_M8?M<1'X>?"&*.0*L>KZ+HD6L:1I^M11@FXMX(/'VIZNT<L$MY
MX2C1)H6_8#_@F_\ "/\ X*'_  O^'GCV^_X*-_M+?#_]H'XJ^._%=EXC\.Z-
M\,?!ECX:\&_"/1!I2V][X1TG5K?P_P"%KOQ'%<WNRZ=[K0[>'398)([*[U%+
MJ2Z?Z_/_  [S?A7+*F,XDS+A_*<TC.C"EPK/-J.-XHJ*K.,95*^6Y9'&T\KC
M1IMUJD,YQ678CDBXTZ,ZKC3ESTL73KS4:,*M2&MZZ@XT%97LIS<7.^B7LXS6
MM[I79^=?_!Q?^U_^S'X*_91'[$'Q#\:Z?<?';]J3XB_LL?\ "#?"-]"U37/^
M$G\$:+^UY\&]8\8W?BF2&PN-!TKPKJ'AWPIXJTIX_$-W!#X@EAN='@M;Q9ID
M'S=JG_!.O_@G]&-3,?[#O[(Z>6E^8]G[.WPF78428ILV^%!MVD#;C&W QC%?
MOK^VG^PC\ ?V[/A5K_PR^,&C76B:IJL7A*/0_C)X!T_P9IWQP^'I\%_$;PG\
M4]&;X?>/?%'A'Q>WAZ)_%O@S1KC4[%M,O=,U.T%W;7=C)]H\Q/A67_@BC8S"
M02_\%-O^"HK^<'$N?BI^S#\XD!$@./V1Q]\,0<8ZG&*^.QD\NE3R]8"CC*56
M&!4<TEB\11KPKYC]:Q4I5L#&EAZ$L-@_J<L'2CAZ\L366(I8BJ\0X5:=*ET1
MY[SYG%IR]SE334.6.DKM\TN;F=URJS2M=-OV?_@B"S-_P2(_X)U%B6/_  R?
M\(ERQ).U?#-JJKDYX50%4=%4!1@ "OU.KP;]EW]G;P-^R1^SO\&OV9?AG?>)
M=3^'_P #?A]X=^&_A'4?&-_I^J>*KW0O#-C'I]C=>(-0TG2="TR\U6:*,/=S
MV&C:9:/*6,%E;QXC'O-<)04444 %%%% !1110 5\!?M'?\G%?!?Z^$/_ %.Y
MZ^_:^ OVCO\ DXKX+_7PA_ZG<] 'W[1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %?A1
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
M+\V/.,YW?+G!P-XM\.IOW:G&/+\_?^YN?E^S&,3](.?+,T8.,YW?+G!QT=%
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
MMP#Y+8\V3]0?^"5G[4'[4WQK\>?MM_!O]J?Q[\-OBEXC_9F^)'P9T#POX_\
MAQ\*;KX.6FMZ)\5/@EX<^*-S:ZIX/N/'OQ%2*YT:^UIM.@O8O$$AO(HFN)(8
M/,2W@_ ']D?QO\=/V4/V=?#'[.7B7]G/[)/^S9X7UJ5=4T/XO?#3QYHOQ5\(
M7GC#QQJFB6G@6\\):WK<OAC4EM+K2X-GCR2VU! K37EFJ&>:/]@?^"$;?$;X
MH/\ ML_MB>*/AM%\,/ ?[5GQ.^#&I?#'P]/\2_AS\2/$,%O\&_@EH'PA\:6G
MBP_#K6]9A\)^(=-\6^'+ZUOO"OB./2?$>F/^YO\ 38R@DD_-N&/$;@CC7,\^
MRKA/B++<^Q'#M3!1S">6XO#XW"N&88:.)PU?"8S"U:V&QM"SGAZU;#5:E.AC
M*-?"U'&I3L_7XCX'XIX2R_A[,^(\HQ644.**.8U\IIXZE/#8NI'*\5#"XV.(
MP=>%/$X6I3E5P]>$*]*#J83%X7$PO2KQ9] ^(_\ @OQ_P2 \*>(-<\+ZW^W!
M\,X-9\.:MJ&AZM!:Z)\0M3MH-3TJZELKZ"#4=,\'7>G7T<-S#+$MW87=S:3[
M=]O/+&5<XW_$0O\ \$;?^CY?AW_X2_Q0_P#F%KW77OV=O^"3/B3Q1KVH>)/@
M5^Q-JOBN_P!8O;GQ%J&K_#'X42:C>ZW/=2?VC<ZC>W6A@W-]-=^:]W<22N\L
MQ>65V9BQT-/_ &*?^"4FK,J:9^S/^PSJ$C@%8K/X:?!:YE(;.W]U%I;2#."
M"H/!&.*_7,!XA?1?Q_+1PV?\28W%QM2K4L!Q[X?8AK$QM"K3C3IY7.JG&JIQ
M4)+GC91DN:Z7AXCA;C;"Q]IB<@S##4G%34\1DF;48NG))QGS5(1BXRB[J2?*
MTTTVCL/V9O\ @IG^P3^V1XUU+X;_ +,?[4GPN^,/CW2= G\4WWA#PSJ5]'KZ
M>';2ZM+*\UB#3=7T_3+F]L;&[O[&"_FLDN!8O>V@NQ"+B$O];>/OB/\ #SX4
M^&KKQG\4?'G@SX;>#[&:UMKWQ7X^\4:'X.\-6=Q?3+;64%UKOB*^T[2[>:\N
M'2"UBFND>XF98HE=V"GP?X&?L6_L8_L]>);[QU^SM^S5\ OA)XNU/1Y="O\
MQ7\+_AOX-\+Z[=Z%=7-O>3Z5+K&@:;;7C:=<W5I:7$UKY_D3RVT#R(YB0KT?
M[47[)W[//[:7PFU#X&?M/?#+2?BS\+-3U?2-?NO"NK:CX@T94UO0II)M)U6Q
MUGPKJ^@^(-+O[)IITCN=,U:TE>WN+FUE:2UN9X9)QD^"J^>X664SXDH\*3EA
M?K57&?V3F&>QIM_[9/"QPTLORVM+E_W6G4JT8M_Q:J3NO*4<5"G*-:-)8A<U
MHI5*=._V5)24IQ_O:/R1TW@_]HC]G_XAF(> /CG\'?')F"F$>#_B;X*\3&4.
MJNAB&BZW>F0,CHRE,[E=6&0P)]=AN(+A/,MYHIXST>&1)4/_  )"R_K7\]/C
M3_@UM_X(V^+/,.F? +QUX =V=D?P5\</BDI@W-(P$2^+/$?BN,B/>%03)+\L
M<>[<=Q?R:\_X-;_V7_#V7^!W[:7_  4)^!#Q!C91^#OCQ8RVELX(:'="WA2R
MN)(HG!8QQ7EL[Y/[Y#@C[#^P?"+%6>%\0^*\L;_Y=YUX?T*D8[?%7R?BS'-]
M?APQS>UQ\?BPE"?G3Q37X5*$?S/Z=**^7OV-OV<]>_90_9Y\#? KQ+\>?BQ^
MTIJW@T:PLWQ<^-6J0ZQX^UV'4]8O=3M;&^O(0S'3M"MKJ+1]&AN;F^NH--L[
M>*>^N&4$?G=^WKX _P""[-U\=9?&?_!/'XZ_L?V'P(_X1;0[6V^$/QR\':A#
MXBB\36T4@\17UWXIL_"NOW&I1ZE<B.?2S;ZWH,%I;N+&>R#P2:C>?)9;P]@\
MWSW&91AN)\AP.$HRQ3P>>9]4QN49;CZ5"JH47'_8\5B,+6Q=.7MJ5'%TJ2A&
M,X5JL)I*71.K*G3C-T:LI/EYJ=)1J3@VKN_O1347HW%OHTK;?ME17\OO_#6W
M_!SY\'HE_P"%A_\ !-7]DO\ :'TNSS]IU;X/?&"P\-ZSJ.T<_9;#4/BG?7L6
MY49D_P"**/S2*#R/*'KOP%_X+*_MV>)_C%\,/@]^TC_P1-_:[^"Q^(?C/0/!
M]Y\1?"6IS?$CP+X0BUK48-/N/%?B#4)O GA73[3PWHZ2MJ>KW+ZX/LFFP7$D
M4EY+&B3?3XCPFXEA0KXK+LRX+S_#8>E4K5:F1\=<*8NK&E2@ZE22P57-</F+
M<:<7)P6$=2R:Y>:T7A''T6U&4,32DVDE4PM>-V[6]Y4W'=_S6/Z):*Y;QSXT
M\-_#?P5XN^(?C+4#I'A'P)X9UWQCXIU46EY?'3?#WAK2[K6=9OQ9:=;W=_>&
MTTZSN;C[+96MQ=S^7Y5O!+,R(WXW_#[_ (.,_P#@C7\1B%T[]M'PMX;E)V^7
M\0? GQ5\  -G&#<>*O ^F68 _P">GVGRB.0Y!!KY#*.%.*.(,/BL7D/#F>YW
MAL#.G3QM?*<IQV8TL).M&4J4,1/!T*T:,JD83E!5'%R46UHCHJ5Z-)QC5K4J
M;E?E52I&#E:U^52:O:ZV/VYHKXH^'_\ P4D_X)]?%..*3P!^VQ^RWXC>?88;
M2V^.7PYMM2E\P@)LTK4/$-GJ;9)5>+3AF56PS*#]:>&?&/A'QK8'5?!OBGPY
MXMTP,J'4O#.N:9KU@'=!*BF\TJZN[<,\;+(J^9ED8. 5(-<..RC-LLDXYEE>
M8Y?*+LXX[!8G"23>R:KTJ;3?9ZE1J0G\$X3_ ,,E+\FSHZ***\XL**** "BB
MB@ HK\+?VQ?V\?VY_"?[;_C7]E/]DS0OV1;3P_\ #/\ 9V^"WQH\5>)_VC-+
M^,VO:SK&K?&+QS\:/"EMHV@V_P +O%'A^RT^RT2V^$JW5P=4AN;FZEUA6BF6
M.+RQ\X2_\%;?VQOV8/C9^S=%_P %!=<_8"\(?LP?&7QQ\0_ OC?XD?"O2?V@
MO#7B+X=3^%/@=\2/BMHFMS77C[Q9XBT6]L]8UKP/I_A)=+@TFYU.]O-?MXK
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
M34M&7T>+P7A-B,#/&Y3XFXW*\1.CB:F#R7CC@K-<EQN*K8>+?U*GCLDQ/$>
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
M"XM]4O\ 34U3Q-K*3WFFZ8WP\T-YM+O_ .I'X)^.?C*D_@+P%X%_91T;X*_
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
MNWRI7;ZMZDTZ-*BG&C2ITHMW:ITXP3?=J*2;\PHHHJS0**** "BBB@ HHHH
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
M-$O+YUM)0#[?HKY"\5>._B/XC\2?%/1O"GC(^"8_A)\'O"7C:%K;0?#NL?\
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
M!TB;[3/H&LW=FZ:;K>M>(O#EO:VMS:ZGJ5LEL9(E_7;X7?!S]E?X)2&?X/\
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
M8.V]+*ZO$?$E?S2_L;A^O@VU_P!AW*W=<R#ZY4E_#P.+E_C5&BO_ "I54O\
MR4_J>=TC1I)&5(T5G=W8*B(H+,S,Q"JJJ"68D  $DXKPOQS^U)^S/\,8KB?X
MC_M#_ _P%':*7N3XP^*W@7PX857.3(FKZ[:.N,'(*YX/'!K^=:'_ (-L/V>/
M&DAN/VF/^"E7_!0W]H>?<\ETGB+X[06%K<O#"EW*LT>NZ+XXO1"+=DDD5-06
M81ME+A&P5]W\#?\ !MI_P10\$SQWVK_!?Q#\2M3@:0SZC\2_C;\4=:>Z-O!%
M<2_;-/TKQ%H.B2[(2DSD:6C;)",["$!_8/A'@M<9XA<3YNUO2R#@2G0A+O;$
MY[Q+E\TGLI/!-K?D:#VN/E\.$HT_.KBK_A2HS_\ 2C[Q\9?\%H/^"4/@,S)X
M@_X* _LO2RVY99[?PU\4M!\;W43HTB/$]KX*F\07"S(T;JT)B\U3M!0;TW?*
M'C7_ (.8/^",_@U9#'^UA)XP>,',7@KX2_%_5V9AC*QO=>"--@D//#),8S@D
M.1@GWWPA_P $??\ @CMX"=9=!_8?_9B:6U$@\SQ'X*@\92#[-;QRR^:WC&77
MC*4@>.63S=^=^]LL[$_6?A']F+]AKX<[3X#_ &;OV8/ QM3,5;PE\$_AEX;>
M!K9%FF8/H_A:S97C299'?.[]YN))8DGM_!3#6<<M\3\W:^S6S;A;(Z<WV:HY
M3GM2*WUC4;7F.V8O[>"I^E.O4:^^I33^X_G//QU^-?\ P5L>W_:\^'?[1WCC
M]F_X3^#->U<?L/>!_@_XJM9]5\*^+_#.IO8R?&;]J+2=.N;G1?'7C#Q+Y$NC
M2_ 36I+KPOX3^'.M7^F:A]M\2>([K5H>]\+?\'*NH^%M,F^&_P 1?V OVJ/C
MK\</AUJ^K_#OXF^.OV0_"6E_$O\ 9Q\6>//#-[+I-SJGPW\:)K<FJ#3=:E@%
MW?\ A[5=+_M;P7JDU[X7NYM8NM)FO9OO+]JS_@E9\+/C5\8+OXG_  /_ &A_
M$G[)&F?%H6OAS]L?P=\)=-TZVTWX\>"-%MH!_:GAN3S+2+X0?&HZ;'!X1U'X
MP^&+*YUG4/!&IW5G?V-SJ]CHVJVGZG_";PE\$/@)\-?"'P?^$6C^%?A[\-/A
MSH<7ASPGX0\.PBSTK1-*TJ-&DB1 &EN+EWG-[JFHWDMQJ.J:A=W.I:E=7=_=
MW%Q+]]Q)Q[X0XGA[A_#8?@MYS]6BUA,C6,Q>0XCAF@HN.*PN.S_!X=U<]GC<
M3;$QE&-6.(?-F=>IEV-Q.)R^7S&493Q1ALWSK$YAG<*^ Q56$L#2C0C)P24;
M.-.34<.J</W+C%S55Q]J[-G\\1_X.5M7TT?:?$__  2"_P""F>BZ7_JVOH?A
M+]M<7#_ZB'R+NWTF(B3#Y<W89=HVQ29X=%_P="_"33W$WC/_ ()K_P#!3GPI
MI3$*-5F^ ^@7$,;@AI3,E[XVT=5BAMQ+<2-#-<3;8R%MR"77^F!O%_AE-^_6
MK%?+\_S,R_=^S>7]HSQ_RR\V+?Z;U]:'\7>&4W[]:L5\OS]^9?N_9C&L^>/^
M61EC#^F\5\$^+/"^2][PDJ0Z7H<?Y["R[KV^!Q/O;ZOFCM[BL[_3>PQO_0>G
MZX6E^DH_TS^<BQ_X.KO^"9L  \=^$_VNOA:XQYJ^-O@#<1BW8*S2K,=$\3ZR
MP,.80^Q).;F$C*;V3Z&\!_\ !R=_P1I\=QQ$?M>6/@Z>9@J6OCSX9?%KP[(&
M/_/6Y;P3=Z=;J.[W%]%&,8W9P#^RVHW/PVU+S?[5A\+:AC[0)O[0TZQN_P#4
MM%%<A_M%M)G87B23.>J Y&*^=?'O[)?[ _Q-^TM\2?V8?V6?'$LHG^T77BSX
M(?#+7+T&W9()Y!?:CX7N+R*6)I4B,T4Z2)OVAP":G^UO!W%Z8C@OCK*;VO4R
MOCC*<>H]TL/F7"$')==<4F]KK<?L\PCMB<-4\IX:I"_SAB'^7R.*^'7_  56
M_P"":OQ8DAM_ '[=G[*VNWMP5$6EM\:_ FD:P=Q 7?HVN:SIFJQ!B< RV: M
ME1RI ^S_  M\0/ ?CF#[5X)\;>$?&%L4$GVCPMXDT;Q!!L.,/YVDWMW'L.1A
MMV.1S7Y%_$3_ ((>?\$7/B/'>+KW[&/P3T6:;S_.O/ LGB?X=7,1@=(YS$?!
M.O:%#$T;RQJS+#E2RXQ7Q=XI_P"#87_@DU+-+>_"[Q;^TQ^S[J4#S36EU\*O
MV@]9(L;FV=(FE'_">:/XVO6$$\L8?9?PS;BH6X3.:/[.\&L=IA^*>/\ (9.U
MO[5X4R7.L/':_-7ROB/ 5VO..!;TOR[)G/F$?BHX6K_U[KU*;^2G1DO_ "9'
M].=%?RN#_@AU^U=\(HY#^RM_P7E_;0\ I;-*++0OBW<W_P 6O#UE#:RI!]F6
MPG\=:+IJ1122QP2K#HL<>Y@S1.<K3A\$_P#@YE^"4?\ Q;[_ (*)?L/?M2:3
MIWF"#1OC+\.D\%Z]J?V:9+60WU_I7P[TZ5"93#%+GX@?+/(VW&3*S_XA_P *
MXW_D2>+?!==WTHY_@N*>&:WSJ8K(\5ET7?37,>5;N:6HOK5>/\7 8A>=*5&L
MONC4C/\ \D/ZH:*_EAD_X*$_\'&GP97R_BO_ ,$M_P!G']H*SL3)_:&N_L\_
M&BTT9YX[6X6TN'LM&U3Q_P",=6F=YV"110:/<.'(5T!8 W8/^#CCXU_#V7[/
M^TY_P1=_X*"?"G[.TD5YJ/@OPS=?$33RT#^3<7%M+K?A'X<V3VZSJR!H]6N(
ML ;;F4D9%X.<8XG7)JW"?$D/LOA_C?A/,*LEW6#_ +7I9@K_ ,LL)&?>*#^T
M,.OXBKT7_P!/<-7@O_ O9N'_ ),?U(T5_-3HW_!U=_P3!2>WL?B;I/[4OP1U
M69]CZ?\ $GX#ZE%+;G@.9?\ A&=;\12D1L2LAC@?;M)Y%?4OA'_@XL_X(T>,
M4MQ:_MM>#M#N;A4)M/%W@3XN>%GMR[*H6XO-8\ 6VE1L"PW[=0=44,[L$5F'
MG8SPD\4,#'GQ'A_Q<Z>MJV&R',<;0=MVJ^#H8BBX_P!Y3<7T9<<?@I;8JA?L
MZL(O[I-,_;&BOS<\._\ !8?_ ()7^*H5FT;_ (*"?LFMN0.(-3^-7@K0;T)M
MC;<VGZ]JFF7R >:BMOMUVONC;#HZKZ!9?\%-O^"=&HP+=6/[=/[)5S;LQ59H
MOV@/A>R,PD\D@'_A)NHE^3_>XKYVMPCQ9AVU7X8XAH--)JMDN94VF]DU/#1:
M;Z(V6(H/:M2?I4@_U/N.BOA^Y_X*9_\ !.NRMY+JZ_;G_9,@MXEWRS2?M ?"
M\(BF;R-S'_A)N!YQ\O/][BN%\0?\%??^"6OABT^VZQ_P4"_9*CBVLZQV/QP\
M":S>2JC;7,&GZ-K&H7\^UN"(;:0@]J5+A+BK$-1H<,\05I-\J5+)<RJ-RM?E
M2AAFV[-.RUL#KT%O6I+UJ0_S/T:HK\0_&O\ P<;_ /!&CP0ER)_VT?#/B2[M
M@Q-CX*^'WQ<\4O/M+J1;7^F^ GT68EHR%QJ@W!DD&8G5S\@Z]_P=+?LK>*G?
M3OV2_P!DC]N#]KK7)G:WTX?#_P"#KZ-X=NKP,L<<-SJMS?:QKUHDDK>7YD?A
M&\D1@?,MUXS]-@O"'Q/Q\>>EP+Q+AZ.E\3FF65\FP<4];RQF;K X6$;:\TJR
MC;6]C&6/P4=\51;_ )83527_ (#3YI?@?T]5'--#;0RW%Q+'!;P1R33SS.L4
M,,,2EY9997*I''&BL\DCL%1068@ FOY5F_X*%_\ !PG^UNYL_P!F;_@G+\'?
MV)/".I^6+7XA?MA^.IM3\36%K=RFUBGA\*W4G@W5(=0AFR8EOOAEJ]K-(C0_
M997W(E=?^"*W[9/[8$T-_P#\%3?^"O\ \6OB9X:U*XM[O6O@#^RVJ_"GX57"
MSW+Q#36O9-.TK1=4LVN8C%;S7'PGM;F!E=8)4.V2O07AIE^4VGQGX@\'\/J-
MO:Y=E&-?&N?1EUI+!<-?6\LI5;736-SO!PC+24TT[1]<G/3#X7$5NTYQ^K4O
M7FK<LVO\-.7H>\?MR_M^:?\ MA?'WQA_P3)_93^,GA/0?#OAWP9IGBG]L+XT
M^#_%_AW5O&E_X&U^3R)/@?\ L_#3;W40GBO5(FBMOBM\2A&Q^%VD:A;Z5I4/
M_"7:K!<Z7^9^MZ;_ ,%1H/CC\ ?^"0G[+O[;FC_"+]G7XH>&_B)XO\*?%^P\
M%:GXN_:L^$WPG\'V<-Y?> ?'WB[09CJ=OX2TK_D6?A3\6+W_ (0K5==GN++P
M=XB^(4^L:=I\-W^PI_X(4?\ !-3P#\&8_!7[*_A>V_9L^-OAV^TWQ5\+OVIO
M#6K:QXK^,WA7Q[IXO[72-1UO7/$^J7<OC'P7K+7%]H_C3X9W\MIX/\5:%=WN
MG&QTZ[33=2T[[-_81_8\^%7[''AGQ)KNK_$./XT_M+_&&YTW6OC[^T9XCT^V
MTWQ'\0M7C:>'1?#?AS289+N#P'\)_"&;C2_A]\-]'NY-+T.S66ZNYM2UV]U+
M5;O]+P_B)X5<,\'3P?"N4_VIF6!<Z>6X7BKAK*Z^/Q/$%3"RIPXUQ5:M_;&6
MPP^$E.<L+ECKUZM-TZ&7/"/#UJ^:1^6GD_$M?B>&85LUIT\DE@G2JX"@YIJ7
M.FZ$9+V<G*<DJDL5=2Y4Z7(XZOP[]@/_ ((=?L/_ +!&J0_$O2/"^K?'W]I:
MZD?4-?\ VF/C[<Q>.OB3=:[<G?J&J^&8[^.;2/!,MS*7 O-%MF\2/;,;?4_$
MNJEII9?V,KG%\7>&7V;=:L6\SR=F)2=WVAY(X,?+_P M7BD5/4HP[4)XN\,O
MLV:U8MYGD>7B7[WVEI%@QQSYK12!/4HU?SQGW$>>\49A4S7B'-<=G&85$H/$
MXZO.M*G3C?DH4(-JEAL-3O:EAL/"EAZ,?=I4X1T/LZ5&E0@J=&G&G!=(JVO=
M]92?63;;W;9T=%<XGB[PS)Y>S6K%O-\CR\2_?^U-(EOMXY\UX953U*-Z4)XN
M\,R>7LUJQ;S?($>)?O\ VHR"WQQ_RV,,@3UV&O%-#HZ*YQ?%_AE_+V:U8MYI
MMQ'B7[_VH2FWV\<^<(9=GKL:A/%WAE]FS6K%O,\@1XE^_P#:ED>WV\<^:L,K
M)ZA&]* .CHKG%\7>&7V%=:L6\SR!'B7._P"TI))!MXY\V.*1T]51CVH7Q=X9
M?9MUJQ;S/(V8E^]]IBDG@QQSYL,4DB>JHQ[4 ='17.+XO\,OMVZU8MO\G;B7
M[WVB%[B#''/FP1R2IZJI-"^+_#+;=NM6)W^5MQ+][SX'N8L<?\M+>-Y5]44F
M@#HZ*YQ?%WAEMNW6K$[O+VXEZ^=;M=Q8X_CMD>9?5%)[4#Q=X9.,:U8G.S&)
M<Y\RV:\CQQSNM4:<?],P30!T=%<X/%WAEL8UJQ.X1D8EZB6U:]C[?QVB-<+Z
MQJ6H'B_PR<8UJQ.=A'[T\B2T:^3^'^*T5K@?],P6H Z.BN<'B[PR>FM6/13_
M *WLUH;]3T[V8-P/^F?-'_"7>&>O]M6.,;O]:>GV3[?G[O\ SY_Z1_UR^:@#
MHZ*YS_A+O#//_$ZL> 6/[WH!:"_)Z=!9D7'_ %R^:@^+O#(SG6K$8#$_O>@2
MT%^QZ?PV;"X/I&0: .CHKG#XN\,KG.M6(VARV9>@BM5OI,\?PVCK<'_IF=U!
M\7^&5W9UJQ&WS2V9>@AMEO92>/\ EG:ND[>D;!J .CHKG&\7^&4W;M:L5V^<
M6S*>!!;)=S9X_P"6=M(DS>B,#[5JV.I6&II+)8745TD,ODRM"VX1R^6DNQN!
MAO+D1\>C"@"]1110 4444 >=?%#PWXS\3>&);?X?>-+[P+XPM+B.ZT?6H$TR
MYL&=@UM<VNM:=K&A>([#4+![2>>6.%M,,T=_#9SP7-LT;25P^K?L\>%M2^&'
MB;X4P>)O&FD:)XYO?%&H^/=9T^Z\-3^)O&E[XT-TWB>YUG4-:\+ZO:6TNIR7
M18-H&G:*=/CM[2STK[#86T=H/?:* / =4_9[T+5I+BZG\<?$.VU'6O!MO\/_
M !MJ>FW_ (7TV[\?^$K&ZU"XTW3/$BV7A*&SLI]+@U?5]-L=:\(6GA;7X].U
M2[@?5)9##-"NK?LY> ]2O-<^S7OB70?#?BVV\)VGC3P)H5]IMKX1\7V_@NRM
M-*T.'58+G1[S6K&+^Q-.TS0=4B\-ZWH46MZ)IMEINKI>V\;*_OM% &9K-@=3
MT?5=+C81-J&F7U@CY*B,W=K+;J^55BH0R Y520!PI/%?R<>&?V _VT?V7M*^
M%W[-^D6W[)4NEIH7ASPUX>N4^)?Q>OHI+!ID\*VD^NS7'P)M+CS'-HK7,=M!
M>;+<A8VE8'/];5? 7[1W_)Q7P7^OA#_U.YZ_//$#PKX'\4:&68;C;*:^;4,H
MJXFO@*5+-LWRR%&MBX4:=>I.&5X[!QQ$W"C"$)8B-65&+JJBZ?MJO/\ <\$>
M)/&7AS6S'$\&YI0RC%9K1P^'QN)GD^29I7GA\-4G6IT*=3.,MS!X>E*I/GK0
MP_LHUY4Z$JRG+#T'3_%CPC_P;7>&?BKHOQ@\6?M3_&7XB?#?X^^-/B%%K/@'
MQK^R;\>_B)/X?\(^!['X?^#?#NG>'=4T7X@>"O#6C:DUOXJTGQ/KT<-CX5T^
M\@LM7L[#_A)KB&W2WMO.5_X)J?\ !<+]@-#_ ,,F?'K]F/\ X**_!O27,EK\
M'?VK_A9X6\-_%.32[=24TVR\=:@?MM[J!M8EMH;^X^+VDVD]].;J?P^PC1#_
M %U45^L\+YE@N&>&LHX+J<+<'<5\'Y%@,/EF6\/<<\,Y7Q90PN"PM.%*A2H9
MEFU"MG^'E3IP25?#9O1Q$I7G.K*;<G\WF.?9WF6:YAG=3-\PPF9YGC<5F.,Q
M&58B644YXO&UYXC$U*>#R[ZM@:$:M:I.?L:.&A1CS-0IQC9'\6.M_P#!2?\
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
M(@"J!V  %/HHKY>YN%%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 <UKO@OP=XHMYK3Q-X3\->(K6Y79<6VNZ#I>KV\ZDABLT.H6MQ'*NX!L
M.K#(!ZBOE_Q;_P $\?V!_'?GMXO_ &*?V4]?GNLBXO=0_9_^%;ZC+N$H._4D
M\+)J'_+>5N+D8D<R#$@##[%HKT,'FV:Y>[X#,LPP+O>^#QF(PSOWO1J0=R90
MA/XX1E_BBI?FF?E+XD_X(;?\$CO%<KS:M^P+^S]'*[^8[Z'X:O?"Q9M[2'(\
M,:GHXVEF.4 VE<(1M50/.=3_ .#>;_@C;JDZSR_L.?#VT9(Q&(],\4_$_38"
M Q;<T-IXXBC:0EL&1E+E0%SA0*_:"BOHJ/B+X@T$E0XZXQHI:)4^)LZ@DG:]
ME'&I+9=.AB\)A7OA<._6C3?_ +:?BQ9_\&[W_!&RQNH;I/V(? L[PL6$5YXP
M^*=Y:OE2N)K:X\=/#*O.0KHP# 'J*] T#_@A/_P2&\-78O=,_8'^ \MPKI(O
M]M:3K7B:!6CSM*VGB37-6M5')+ 0@.<%PQ5<?K/13J^(_B%735;COC*JFN5J
M?$V=23CO9IXUIKR:!83"+;"X=?\ <&GZ?RGR%X*_X)^?L)?#D6Y\#?L9_LM^
M%YK4(+>]TGX#?#"WU*/RU54/]J#PPVHLRA1AGNF;=E\[F8GZLTO1](T.U2QT
M72M.TBRC5$CL]+L;;3[6-(UV(J6]I%#$JHH"HJH JC  '%:-%?-8S,\RS&7/
MF&88['SNWSXS%XC%2N]WS5ZDW=]=3:,(0^"$8_X8J/Y)!1117"4%%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !7P%^T=_R<5\%_KX0_\ 4[GK[]KX"_:._P"3BO@O]?"'
M_J=ST ??M%%% !1110 5X_\ &K]GWX&?M'^$+KP#\?/A%\._C%X-NTE23P]\
M1?"6B^*]/B:9#')/9)J]G=/IUV4)5;W3Y+:\C'^KG4U[!16^&Q.)P=>EBL)7
MKX7$T)JI1Q&&JU*%>C4CK&=*K2E&I3FNDH24ET8FE).,DI)Z--7379IZ,_F;
M^+/_  ;2?!+PAXOU'XP_\$TOVFOV@?\ @G+\89&>[MH?AQXQ\1^+OA3?72?O
M(K/5/"VJ>(-/\4+I<LIEW67_  F6H:+9";=;>'GA@CLV\R/[5?\ P<1_\$X2
ML'[4_P"RQX _X*?? C16*7GQE_9FG7PY\9[?1[1'WW^J^#M"T&*^O;N.WQ<2
M1GX2-;W)@$-UXMBN9WN#_5C17Z?0\6\\QM&G@N-\LR7Q$P%.*I1?%.%G//:%
M%)1<<'Q9@*F#XCH2LERJMF&+H)I.6'GL<3P%*+<\-.IA)MW_ '$K4F_[U"2E
M1?RA%^9^%?[)O_!Q5_P3*_:@U.V\$Z_\5]2_9<^+_P!ICT[4OA7^U#H[?"_4
M+'6"ZPS::GC&[FNOA]-<PW+&#[+<^)[#52RL[Z7$@+5^XNEZKI>N:=9:QHNI
M6&L:3J5M#>:=JFEWEOJ&G7]G<()(+JRO;22:VNK::-EDAG@EDBD1@R,RD&OC
M+]K#_@F_^PY^W!IMQ9?M/_LU?#/XG:C-;-:P^,;K1O[!^(NG(8UCC;2_B-X7
MFT7QM8FW")Y$4.N"V4 QO \,DT4GX>:G_P &_P#^U!^QSJ-YXR_X(]_\%)_C
M+^SS%%<MJ$7[.OQXN?\ A9OP1U20;I38+(]A?:=8PSOOB,NM_#KQ7J,AG$K:
M[:/;13#7^R_";B?7*<^SCP[S.IMEO%=&?$/#3JRT5+#\29+A:>;8.DI;2S#A
M_$QA%KVF,:BY!SXZC_$I0Q</YZ#5*M;NZ-23A)_X*JVTCJ?U/T5_*LO_  5_
M_P""LW[ C#2/^"J7_!-'7?B'\.-*,45]^U7^Q9=+XN\+_85=_-UWQ!X1CN=9
MTFPB:!)+B4ZOKOPSFMTA2(^'S+<+C]4_V1/^"V/_  3/_;7_ +,TSX/?M/\
M@O2?'6I%(5^%GQ7DD^%'Q&COW=(_[,M=#\9_V;:>(KY99%BQX0U/Q%;2R96"
MYEQFO'SGPLXUR?!RS6GED,_R&-VN(N%<7A^)<D<$N;GK8S*9XGZBK;T\RIX.
MM%IJ=*+T+IXW#U)*#FZ55_\ +FO&5&I?LHU$N;_MQR79GZK44U'615=&5T=0
MZ.A#*ZL 596!(96!!!!((((.*=7YX=84444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%075U;65O+=WMQ!:6MNC2SW-U-';V\,:C+
M22S2LD<:*.6=V50.III-M))MMV22NVWLDNX$]%?EQ^TC_P %J/\ @EW^RF-0
MMOBU^V1\)'U_35;S_!_PZU:X^+?B\3JSI]C?0?AE:^*KNRNO-0PNFIBQ2WD_
MX^I($#.OY@WO_!QA\1?VA)KC1_\ @F=_P2W_ &O?VM)I2;?3_B)XUT,_"3X5
MQS;C"UU/K=M8^,8);>"7$C6VIZQX8EDM^9KBQ;S/(^_RCPL\0,ZPZQV%X8S#
M"99HWF^=>PX>R91>O/\ VMGM;+LOE%+WGR8B32UL<M3&X6G+E=:,I_\ /NG>
MK4[?PZ2G/?R/ZA:P/$WBSPMX*T:\\1^,O$N@>$O#VG1-/J&N^)M8T[0=&L85
MQNFO-4U6YM+*UB7(W23SH@R,FOYDG^&7_!S[^V.KCQU\:OV4_P#@F7X!U;8T
M^A?##2+'XL?%JSL)2HDMCJQ?Q]96]ZL1$L=SH_Q"\.WB2!XY);0CRWW_  ]_
MP;'? OXCZS:^,/V_OVS/VQ_V]/%R7$5[=0?$'XE:KX-\#R7BD&?['X?LM4\2
M^)M-M;D926&Q\=0.1\Z2QLTF_P!;_43@_*+/BOQ.R*-2+O++>"L!CN,L<U&W
M-!XZ/]D\.0F[N,94\[Q,$US6DM#/ZSB*G\#!5;?SXF4</'_P%^TK>>M*/;0^
MWOV@O^"_?_!)/]G 7]KXM_;$\ ^-O$%@\D'_  BOP6MM;^,FL7%W$<-9K=^
M--UKPW8S'DI)K.OZ9:L,?Z1EXP_P!-_P<<_$WX\M/9_\$\/^"3G[:'[4D5QE
M-(\=>+=%?X7_  ]G5B$COCJNE:)\0+6:VC9@\T%UJ^C$1@F2ZMT/G+^QOP"_
MX)5?\$Y/V8$LV^"7[&GP%\):C8)"EMXCOO ^G^,_&"-;MOAG?QIXZ_X2;Q9+
M=(_S+=RZR]R,D"7!(K[^CCCB1(HHTBBC4)''&H1$11A51% 554  *H  X H6
M>>$>4:99P1Q'Q763NL5QAQ+'*\(VK6_X1N%L-AZZBVFY0GQ%5T;CS2O='LL?
M4^/$T:"_EP]'GE_X,KRDONHKY=?Y=$\5_P#!U!^U$5.C?#_]BC_@G?X6U2-5
MBO?$^HZ=\5OB!I5O,I*78M8;KXQ:2UTB,IEMM0\/:;-',#FTA(:!>>\2?\$%
M_P#@HQ^T/I=OJG[9/_!9KXD?%K7-"UC3O'7A7X6:?\(=/D^ *?$/PO/%K/A"
MX\9>"M0\46'AKQEX4LO$5I87&I:%)X THW-G;M]GDM[QX9K7^J^BKI^,.?Y;
M4A4X6X?X&X/E3G&5.KD?".58C'14'[J_M;B"GGF;>LHXZ,GK=ZLF674*L90Q
M-3$8J,XN,H5J\U3DI*TDZ=)TZ=FMURVU9_)>?@U^VC^WG>^)/V _BA^SMJG[
M/"Z9$/#?[;OQZ\1^'K7Q-\'/^$!EEC^P1?LAZAKUO-8?$WQ5\:-.@?5?"6M7
MUGM^!=A]JN?%]L_C/2M)TZZ_<KX#?\$I?^"<W[->C:'I/PG_ &-_@#I=UH.F
MZ9IT'BC7?AMX8\8>-;Y]+M8;6/5M5\7^*M.U?7;[7+H0B>_U:2]6ZNKF2:5W
M'F%:_0:BN;B_Q:XIXJAA\)1KSX>RFC33JY1DF,QU#!XO'584UB\;C'*O*KB7
M4E3C#"8>O.I1P&%A"A2YZTL5BL7YN0\+91PY1K4<NP]E7KSKSJ5G[6I>3]R$
M927NPI0M""6K4;R;DVRG8:?8:7:PV.F6-GIUE;HL4%G86T-I:P1(H5(X;>W2
M.*-$4!51$554   "KE%%?F#;;;;;;=VW=MONV]V?1!1112 **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M%>2:!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 5\!?M'?\G%?!?Z^$/_ %.Y
MZ^_:^ OVCO\ DXKX+_7PA_ZG<] 'W[1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %(P# JP#*P*LK#(8$8((/!!'!!X(I:* /E'XO?L(_L5?'V*:
M+XT_LG?L[_$UKCS#)>>,?A!X$UG4]\NTO-'J]SH;:I!<9566XAO(YXW57CD5
MP&K\QOB9_P &T'_!&WXDM+*G[*\OP]NIWDEDN?AG\4?B?X:7S)&9RT6G7'BO
M5=&MD4MB.VM=-AM$5518 N0?WGHKZS*./.-\@48Y)Q?Q-E5..U+ 9YF6%H>C
MH4L3&C)>4H->1A4PV&J_Q,/1G?K.E"3^]QN?S#WO_!KI^SGX9N/M/[/W[<__
M  40_9]6/)M-,\(?'33KS1;4C)@V6X\*Z5JCB%@@"MK.&1=ORL1(/E3QG^Q+
M\0O^"8G[1'@7XG_MB_M"_'7]M;]FW4(K;PG\ _VH?CWXX\1^*-,_8U^*7BB3
M^RM9T3Q]X/UK6M=\/^!=/^*UL-*T;P]\?-.GL[#3;NW;P;K\'AN/6H-1U3^R
M.N:\9>#/"'Q%\*>(? GC_P +>'O&_@GQ;I-[H'BGPCXLT?3_ !!X:\1Z'J4+
M6VH:1KFB:K;W6FZIIM[ [PW-G>VTUO-&Q62-A7Z!D'COQO@LQHU.(LQGQ+E<
MXSP^.P^+P^7PS*6'KQ]G5JX+.8X/^T*&,C!OE<Z]7#XB+GAL;1KX:M5@_&SG
MAS!9OEN+RYRJX18FFX>UPU6I!Q=U)7@IJ$Z;:2G3:Y9QO%Z-G\AGPD_93_;7
M_;3^*?Q9_:&_X)A_M.>(O^"?/[//BJ\CTOQG\7AH<OB3PE^VG\5?#]S+INH?
M%/X<_"B]AATFS\/>&+&!O"E[\;XY[&Y^*][;I%96NKZ9X?&LR?2W_#J?_@O$
M_P DG_!>?6Q&WRR&/X :*L@1N',;+?*RR!2=C*RE6P0RD9']-?A_P_H7A/0M
M&\+^%]%TKPYX:\.Z78:'X?\ #^A:?:Z3HNB:-I5K%9:9I.DZ78Q066G:;I]G
M!#:65E:0PVUK;11PPQI&BJ->HSKQOXBS#,L1B<#E'"6'P3<*6#I9IP?PKQ#F
M4,-0IPHT/KN<YQDV*QV-Q'LJ<.><JD*%/^#@\/A<)3HX>G659!ALJR["9?"O
MC:T<)1C256IB\0I3MJWRPJ1C&-V^6$4HPC:,=(JW\PB?\$7?^"MFMGR?%?\
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
MJ+@6I_YA'/[TY&/O09NES; S5T-% '/_ /"3Z7_SRUOKC_D6/$O_ #\_9?\
MH$?\]>?^N'^E?\>O[ZD_X2?2SC]UK?) _P"18\3=[@VH_P"81Q^]&3GI!BZ.
M+8B:NAHH YX>)]+(!$6M\X_YE?Q,.MQ]E'!TCC][R<](/]*.+;]]1_PD^EG'
M[K6^<?\ ,L>)OXK@VH_YA'_/49/]V#%TV+4B8]#10!SP\3Z6<?NM;YVXSX8\
M3#[]P;89SI  _>C+9QL@(NGVVS+,0>)]+.W$6M_-LQGPQXF'^LG:V7.=(&W]
MZI+[L>7#MN9-MLRRGH:* .>'B?2VV@1:W\WEXSX8\3+_ *V=K=-V[2!MQ(A+
M[L>5"5N)-ENZ2L+XGTMMN(M;^;RL;O#'B9<>=,\";MVD#9AXV,F_;Y,12>;9
M#)'(W0T4 <\OB?2VV8BUL;_*V[O#'B9,>?*\*;MVD#9AXV,F_;Y,>R:;RX9(
MW87Q/I;;,1:W\_D[=WA?Q,F//D>--V[2!LPT;&7?M\A-DD_EQR1NW0T4 <\O
MB?2WV8BUOY_)V[O"_B9,>>TB)OWZ0OEX,3>;YFWR%V//Y:21LXOB?2WV;8M;
M^?R=N[PQXF3_ %YD6/=OTA=F#$WF[]OV<%#/Y8EB+]#10!SR>)]+DV;8M;_>
M>1MW>&/$R8^T-(L>_?I"^7@Q-YWF;?LZ[&N/*66(N)XGTM_+VQ:W^\\C;N\,
M>)DQ]H,@CW[](7R\&)_.\S9]FRAN/*$L6_H:* .>7Q/I;[,1:W^\\C;N\,>)
MD_X^1(8]^_2%\O'E-YQDV_9B4%QY1EB#B^)]+?9B+6_WGD;=WACQ,F/M"R/'
MOWZ0OE@"-O.,FT6[%$N/*:6(/T-% '/+XGTMMF(M;_>>2%W>&/$R?\?$<DD>
M[=I V86-O-W[?L[E([CRI)8U<7Q/I;;,1:W\_D[=WACQ,O\ KXGFCW;M(&S"
M1L)=^WR)"D,_ES21HW0T4 <\OB?2VVXBUSY_*VY\+^)E_P!?"\Z;MVD#;B.-
MA+NQY$NR"?RYY(XV%\3Z6VW$6M_-Y6,^&/$R_P"N@:Y3.[2!MQ&C"3=CR9MM
MM-Y=PZ1-T-% '/#Q/I9QB+6_F\O&?#'B8?ZVW:Y7.=(&,1*0^<>5-BVEV7++
M$0>)]+."(M;YV$9\,>)A_K+=KI<YT@8Q$I#YQY<^+63;=,L)Z&B@#GAXHTLX
MQ%K?(C(SX7\3#_6VK7:YSI Q^Y4AP<&.XVVDFR[=8"#Q1I9Q^ZUOD(>?"_B8
M??M3>+UT@8_<J0PZI<8LWVWC+ >AHH Y[_A)]+_YY:YT4_\ (K^)APUJ;P?\
MPCKY(VD=1<_Z&0+PB"C_ (2?2_\ GEK? S_R*_B;_GU^V8_Y!')\GY<#G[3_
M *'C[9^XKH:* .>_X2C2_P#GEKG<_P#(K^)NUJ+PX_XE')\DA0!R;G_0AF\!
M@H/BC2QG]UK? <G'A?Q,>$M1>-C&D<GR6 4#)>XS9H&O%: =#10!SQ\3Z6N<
MQ:WP)"<>%_$S<1VJWC8QI!R?)8! ,F2XW6<8:[1X%&\4:6N28M;^42D[?"_B
M9O\ 56R73XVZ0<YB=1&!DS3[K2'?=(\*]#10!SS>)]+7=F+6_E\TG;X7\3-_
MJ;=+E\;=(.[,4BB+;GSY]]M!YES')$NI97]O?I(]NMVJQ2>4XN]/O]/8ML23
M,:7]M;/+'M=?WL2O%O#1[_,1U6[10 4444 %%%% !1110 4444 %? 7[1W_)
MQ7P7^OA#_P!3N>OOVO@+]H[_ ).*^"_U\(?^IW/0!]^T444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 5\!?M'?\ )Q7P7^OA#_U.YZ^_:^ OVCO^3BO@O]?"'_J=ST ??M%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %? 7[1W_)Q7P7^OA#_U.YZ^_:^ OVCO^3BO@O\ 7PA_ZG<]
M 'W[1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%?)/[2DOC*#4_"UQ>1_$T_!.WTG6K_P ;7OP7@LKS
MQWHOBS1[_1M9\+:UJNG/:W^O:IX,LK33]7DNK#PGI^I7T^KBPCU?3-0TB1[<
M\IJGC[Q+\1+SXIW'@;XK:QIGAOX7? [P'X[\%Z[H%MX<EB\;:YXPT'Q;XEM?
M%/B>._T*=;S2'M?#>EVXT*QAT>UE6\UG>(9VM?L !]PU\!?M'?\ )Q7P7^OA
M#_U.YZ^R/AMXEO/&7P[\!>+]1MH[/4/%7@SPQXCOK2$.(;:[UO1+'4KF"$2$
MR"**:Y=(@Y+[%7<2<FOS9^*_Q>TWQK\:/"7B.+1=2L[;P'K&GZ7?6L<D&H7M
M^OA[Q;<7]S/8PPF(%YH4=8+>5T8N 'D126 !^K=%?*__  UU\/O^A5^)G_A+
MV?\ \NZ/^&NOA]_T*OQ,_P#"7L__ )=T ?5%%?*__#77P^_Z%7XF?^$O9_\
MR[H_X:Z^'W_0J_$S_P )>S_^7= 'U117RO\ \-=?#[_H5?B9_P"$O9__ "[H
M_P"&NOA]_P!"K\3/_"7L_P#Y=T ?5%%?*_\ PUU\/O\ H5?B9_X2]G_\NZ/^
M&NOA]_T*OQ,_\)>S_P#EW0!]445\K_\ #77P^_Z%7XF?^$O9_P#R[H_X:Z^'
MW_0J_$S_ ,)>S_\ EW0!]445\K_\-=?#[_H5?B9_X2]G_P#+NC_AKKX??]"K
M\3/_  E[/_Y=T ?5%%?*_P#PUU\/O^A5^)G_ (2]G_\ +NC_ (:Z^'W_ $*O
MQ,_\)>S_ /EW0!]445\K_P##77P^_P"A5^)G_A+V?_R[H_X:Z^'W_0J_$S_P
ME[/_ .7= 'U117RO_P -=?#[_H5?B9_X2]G_ /+NC_AKKX??]"K\3/\ PE[/
M_P"7= 'U117RO_PUU\/O^A5^)G_A+V?_ ,NZ/^&NOA]_T*OQ,_\ "7L__EW0
M!]445\K_ /#77P^_Z%7XF?\ A+V?_P NZ9)^U]\.84:2;PS\2(8D&7DE\-6,
M<:#IEW?7%51GNQ H ^JZ*^54_:]^'<B+)'X8^),D;J&22/PS8NCJPRK(ZZX5
M96'*LI((Y!(IW_#77P^_Z%7XF?\ A+V?_P NZ /JBBOE?_AKKX??]"K\3/\
MPE[/_P"7='_#77P^_P"A5^)G_A+V?_R[H ^J**^5_P#AKKX??]"K\3/_  E[
M/_Y=T?\ #77P^_Z%7XF?^$O9_P#R[H ^J**^5_\ AKKX??\ 0J_$S_PE[/\
M^7='_#77P^_Z%7XF?^$O9_\ R[H ^J**^5_^&NOA]_T*OQ,_\)>S_P#EW1_P
MUU\/O^A5^)G_ (2]G_\ +N@#ZHHKY7_X:Z^'W_0J_$S_ ,)>S_\ EW1_PUU\
M/O\ H5?B9_X2]G_\NZ /JBBOE?\ X:Z^'W_0J_$S_P )>S_^7='_  UU\/O^
MA5^)G_A+V?\ \NZ /JBBOE?_ (:Z^'W_ $*OQ,_\)>S_ /EW1_PUU\/O^A5^
M)G_A+V?_ ,NZ /JBBOE?_AKKX??]"K\3/_"7L_\ Y=T?\-=?#[_H5?B9_P"$
MO9__ "[H ^J**^5_^&NOA]_T*OQ,_P#"7L__ )=T?\-=?#[_ *%7XF?^$O9_
M_+N@#ZHHKY7_ .&NOA]_T*OQ,_\ "7L__EW1_P -=?#[_H5?B9_X2]G_ /+N
M@#ZHHKY23]L'X;2220Q^'/B-)-#CSH8_#FGO+#NY7S8UUTO'N'W=ZKGMFI?^
M&NOA]_T*OQ,_\)>S_P#EW0!]445\K_\ #77P^_Z%7XF?^$O9_P#R[H_X:Z^'
MW_0J_$S_ ,)>S_\ EW0!]445\K_\-=?#[_H5?B9_X2]G_P#+NC_AKKX??]"K
M\3/_  E[/_Y=T ?5%%?*_P#PUU\/O^A5^)G_ (2]G_\ +NC_ (:Z^'W_ $*O
MQ,_\)>S_ /EW0!]445\K_P##77P^_P"A5^)G_A+V?_R[H_X:Z^'W_0J_$S_P
ME[/_ .7= 'U117RO_P -=?#[_H5?B9_X2]G_ /+NC_AKKX??]"K\3/\ PE[/
M_P"7= 'U117RO_PUU\/O^A5^)G_A+V?_ ,NZ/^&NOA]_T*OQ,_\ "7L__EW0
M!]445\K_ /#77P^_Z%7XF?\ A+V?_P NZ/\ AKKX??\ 0J_$S_PE[/\ ^7=
M'U117RO_ ,-=?#[_ *%7XF?^$O9__+NC_AKKX??]"K\3/_"7L_\ Y=T ?5%%
M?*__  UU\/O^A5^)G_A+V?\ \NZ/^&NOA]_T*OQ,_P#"7L__ )=T ?5%%?*_
M_#77P^_Z%7XF?^$O9_\ R[H_X:Z^'W_0J_$S_P )>S_^7= 'U117RE)^V#\-
MHFC2;PY\1HGF;9"DOAS3XVF?CY(E?75,K\CY4#-R..14O_#77P^_Z%7XF?\
MA+V?_P NZ /JBBOE?_AKKX??]"K\3/\ PE[/_P"7='_#77P^_P"A5^)G_A+V
M?_R[H ^J**^5_P#AKKX??]"K\3/_  E[/_Y=T?\ #77P^_Z%7XF?^$O9_P#R
M[H ^J**^5_\ AKKX??\ 0J_$S_PE[/\ ^7='_#77P^_Z%7XF?^$O9_\ R[H
M^J**^5_^&NOA]_T*OQ,_\)>S_P#EW1_PUU\/O^A5^)G_ (2]G_\ +N@#ZHHK
MY7_X:Z^'W_0J_$S_ ,)>S_\ EW1_PUU\/O\ H5?B9_X2]G_\NZ /JBBOE?\
MX:Z^'W_0J_$S_P )>S_^7='_  UU\/O^A5^)G_A+V?\ \NZ /JBBOE?_ (:Z
M^'W_ $*OQ,_\)>S_ /EW1_PUU\/O^A5^)G_A+V?_ ,NZ /JBBOE?_AKKX??]
M"K\3/_"7L_\ Y=T?\-=?#[_H5?B9_P"$O9__ "[H ^J**^5_^&NOA]_T*OQ,
M_P#"7L__ )=T?\-=?#[_ *%7XF?^$O9__+N@#ZHHKY7_ .&NOA]_T*OQ,_\
M"7L__EW1_P -=?#[_H5?B9_X2]G_ /+N@#ZHHKY5?]KWX=1(TDOACXDQQH"S
MR2>&K%(T4<EG=M<"JH')9B !R3BDC_:^^',J+)%X9^)$L;C<DD7AJQDC=>S(
MZ:XRL/=210!]5T5\K_\ #77P^_Z%7XF?^$O9_P#R[H_X:Z^'W_0J_$S_ ,)>
MS_\ EW0!]445\K_\-=?#[_H5?B9_X2]G_P#+NC_AKKX??]"K\3/_  E[/_Y=
MT ?5%%?*_P#PUU\/O^A5^)G_ (2]G_\ +NC_ (:Z^'W_ $*OQ,_\)>S_ /EW
M0!]445\K_P##77P^_P"A5^)G_A+V?_R[H_X:Z^'W_0J_$S_PE[/_ .7= 'U1
M17RO_P -=?#[_H5?B9_X2]G_ /+NC_AKKX??]"K\3/\ PE[/_P"7= 'U117R
MO_PUU\/O^A5^)G_A+V?_ ,NZ/^&NOA]_T*OQ,_\ "7L__EW0!]445\K_ /#7
M7P^_Z%7XF?\ A+V?_P NZ/\ AKKX??\ 0J_$S_PE[/\ ^7= 'U117RO_ ,-=
M?#[_ *%7XF?^$O9__+NC_AKKX??]"K\3/_"7L_\ Y=T ?5%%?*__  UU\/O^
MA5^)G_A+V?\ \NZ/^&NOA]_T*OQ,_P#"7L__ )=T ?5%%?*__#77P^_Z%7XF
M?^$O9_\ R[H_X:Z^'W_0J_$S_P )>S_^7= 'U117RO\ \-=?#[_H5?B9_P"$
MO9__ "[KTWX:_&GP=\4[C5+'0$UC3]4TE4FNM)U^QBL-1^QR>2JWT<,%U>(;
M4RS) &DECE,F<1&/;(P!ZW1110 4444 %%%><_%CQCX@\!^ ]?\ $_A?PA-X
MVUO3+&[N;/11JEGHEB/LUG<WDM_K.K7?F-8Z/916SR7LME9:GJ3YC@L=-NIY
M5"@&1\2_AEJ7CZ_\-RV/CKQ=X2TVWN;JQ\9Z9X>UN[L+;Q5X3NM+U6)]'\I5
MECTS4CJ]SIMR/$&G"SUB/3K>\T^.\47$$EKDZM^SM\,]16T@LK+6?"^G1>#-
M,^'.I:1X2U[4?#^F>(_ 6B^<ND^$_$-O9R@W^F:=!=ZE9VLT<EOJ:66K:I9G
M4#;WDL9M6'C7Q[XL^%'@+Q_X3T_P1IU_XH\$:%XTUF/Q;JVLPZ-I$>K>&K/7
M&LK:;3=.DN+B))[IH9-1NGM%L[2W:Y:TNY)/(CX(_&S7?&_@7]GC4?"%E+X5
M\4_'?5O#&I#3KZ"'5;CP_P""["P_X2_Q[>YGMA:SPC0;+^P]/U*>VB4WGB31
M[F.*.XEAC !]/VMK;6-M;V5G;PVMG9P0VMK:V\:0V]M;6\:Q00011A8XH88D
M6.*-%5$1550  *XC5OAGX.UGQ)X9\676EB'6O"5S>7FD3V+FQC^T7PB%P][#
M;"-+\GRE*?:1)Y9:0K@R.3YGX<^+WB6X^+B_##6K/P5K;7?A7Q+XIEN/AYKE
M]KEUX)'A_6-+TRUTCQO'>VEK';7/B/\ M2:/0KH#3WN[_0=<MAIQBMFN(I_A
M'\9M<\=7/QCC\<>#X/APOPM\56>E&TNM=M]8ODT*\\#>'?&L>H^(IK*(:7IV
MJ16FN,-0T_3;S5;.P$/E+JEXZ22D ^@Z*^/X/BW\7=-^!%Q\<[FP\'WNDC0O
M&'Q4GTCQ+<ZAX>U2'P*+N^UKP;X3TE-.TF6"+6)O!4-@6U76I;J:X\0:@EG-
M9+"#,FIXJ^/OB^'_ (6'?>"_!FDW>F?![P#X<\>^/;/Q3JFH:5KE^==T"]\8
M3^$O#L-II]S9VNL:9X7L//FU'5IGLI=6U*QTW[+#%!>7J 'U917SCX=^..M^
M(_C3H'P^B\#MIG@CQ/\ "S6/B)X=\9:EJ]N=5U]M+O? L++9^';..X%CHOD>
M-8XEOM3U"WU&YU"PNDCTJ*R2*\NC3OCK>ZU^T"GPGTCPY:7'@R+P_P",!<^.
MFU*47%QX[\%7/A7_ (2#PWIFEI:-;W&G:+:^+-.MM4U5[])(]?%YI$=F7TV[
MEH ^CJ*** "BBB@ HHHH **** "BBB@ HHHH ***1C@$X)P"<*,DX&< =R>@
M'K0 M%?/7PK^+GC;XBZE\9M&U/X?V?@S6_ASK^CZ3H&BZKXD2]N=0M]>\%Z/
MXKTN7Q3>:387]EHM])_:L<=]9:0VOQ:?$1&MW>W$<F8M ^-6HZ;>_&W2_B98
MZ#I[?!+0]!\4:SXB\+W5_<:%?:/KOA_5=?-B;;4X$O;#7]*M]'DDN[ S7BW-
MEJFAWD#(U]]F0 ^BJP/%/AK2O&/A_5/#&N133:3K-M]DOHH)Y+69X?,23$=Q
M"5DB.Z-?F0@XR.A-?*6K_&?XK?#;X6>"O&7C6+P)JVO:IHOAW5]6\%76HW.C
M_$/Q!K'BW7HE_P"$+\%:!96/V2;5=!L]6TW0M+61=1N-=U2V==1.FLTEY+ZE
MXI^+?B;0/C=\,/AC'X%/_"*>/'\36EQXZU#6;:!_[4T3P=JGBR*QT#0;5+NZ
MO88H]-%MJVHZK-I,4$US'#I\.HE9Y80#V;0]'L?#VC:3H.F))'IVBZ=9:581
MRRO/*EG86\=K;))-(3)*ZPQ(K2.2SD%F.36I7@<WC/QWX@^+7CCPQX%DT6;1
M?AYX,T&TU2#6XYK?3;OXC>,;\:K;0W.J6EE>:CL\*^";.WU2XTO3_)%_-XKT
M^&[N+7;#<P<19_M"^)[BTE\.?\(OH,OQ&?XZW_P)TV2WU743X'U'4-,\+_\
M";:IXK2[:P;58]/T7P]'?6NI:+LDNQXGTVXT1-26-S?0 'UG17Q3XO\ VG_'
M/A/P)XYU5?AC8Z[XK^&/Q'B\!^.7M/$BV'@S3["67P;=V?B6UO+NVEUZY?6M
M%\;:6VEZ!#I<\\6K6^J6VHZG;V%C'J%YZ#\3_C5JO@KXFZ/X$34?ASX4TG4/
M!9\4'Q7\2-3U+3-.NM2/B-=#C\/:=+;M:6/VP1.M\YGOO-V.@%OY9,M 'TK1
M3(V+(C$HQ9%):/E&) )*'G*'JIR<C%/H **** "BBB@ HHHH **** "BBB@
MHHHH **\%\8?%KQ/X:^-'PJ^&T'@7S/"GQ O]>TN]\=:AK-O;^7J>E^"O$7B
M^"P\/Z%;1W=WJ CCT#R-7O\ 5)-(MK4WEO'8)J4OGFV?XQ^(_C?P1X]\ Z7J
M>A>%M0\(?$7QTG@+1X])U35I?&=C/+X<UG7T\17EI<:;#I=QI=LN@WJZO96L
M@DTRTGMKP:A>;)H* /=Z*^;1\1?&VL>,?B]/X;U/PA9>#/AW=>$_ MK<^,IY
M-*T ^,#;-K_CO5[G5[:TDO;K^R;'7/"_ARTTN.[LK$ZO'J@GNX[B$HW+7G[1
MOC!?V>O%GQ@T'X<6GBS6O#%U\0[.*'3/$<5EX$UG3? #>(#/\0-.\2WUM]ON
M? NKV^@O/I,NG:5J>IW]Q>6ME9Q3V\C:M& ?0^B> ?#GA[Q1XI\8Z9!=1ZYX
MQ-B=<FEO)YX)CIT;16OD6LC&&VV(S!O*5=^>:[2OG_X@?$;Q GA#X56_A.6'
M2_&WQ@\2^"-'TDK;1:JNCZ;>VR>*_'&JK:W430W,6B>"]+UXPS740@%])IXE
M >:.-JNM?%[Q3X&^(FE^&/'FB^&CX=\1^%?B1XPT_4/"FHZMJ&K^'-(^'$&F
MW]Y/XDM+_3K.&YMM3L=4MH8;VP^S1VNLF/3/)NTN(KL 'T517R?H'Q\\<M<_
M#R;Q+X T^:S^,G@/Q'XV^'6C>$-9DO?$L%WH.AV'BFW\(^(&UR#1M&DU76?#
M^IPO!JEK>6>F6.JV-]8W8-M):Z@];2?VF[V'X&WWQ4\9^%='\.^(HOB9XA^%
MMKX6B\4>=HB^(['XEZA\.]*&H^+KG3+:*UTX2VJZEKFJC3&AM+6&]DLK>\*6
MT4X!]<T5YK\+O&,OC;0;G59?$WP^\4M#J,UD;SX<ZE<:EI%LT,4+/97LEU<7
M$T.I1,Y>2%_*/D202>4H<$^E4 %%%% !1110 4444 %%%% !1110 4444 %%
M<AX[\0:WX8\+:IK/ASPM<^,M;MHXUT[0+?4+'24NKB:5(A-?ZIJ#B#3]*LE=
MKS4[M(;V[ALH)FLM/O[OR;2;SCP)\0/'_P 3?@K\,_B-X9T?P;I.O^./">@>
M*-5L=?U369M#T5=5TA-0GMK*6PTY+[4PEU(EK%-<'3!';%[R199(Q9R 'NU%
M?)C?'3Q#XT^$'P@\0>%;)?"_CGXU>+]"\+Z-;;8=?@TJTMM8O[KQMXDL?M-I
M'#JFBVW@SPUXAUO1=0NK.&&YM[O199HDDNDB;J[#XN>)8?C-HWPNU:U\#ZQ%
MXCLO&>H!?!&NW^KZ]X$M/"[63V-SX]M+FT@BM+374OH=.@N5CL/*U]DTZVAU
M&$RWD(!ZKXG\!>'/%^J^$]9UNWN9K[P5JW]M:"\%Y/;1PW^^UDWW$43*EU'N
MLX#Y4P9,!AC#MGLZ\!^%/Q?\2>//&OQA\+^*?!"> HOAO>>$3I<=[KEKJ>KW
M^C^*=$N]7AO_ !!%8HVE:+>A+7S3IUGJ6JI:VTT:W5]]I2:*/B-&^*?Q7O\
MX1:_\9K"/P7=^'IY_B'X\T2W\73:EH'V;X8Z%+<?\(;9P/IFF3$2^(M!TJ3Q
M/<>(-6FG:R_MB"W&G75JJ&U /K6BOE*\^/GC+7DO6^'G@O2&G\,_!OPC\8O%
MNG^-=4U#2[V-?&EAJ^J:-X%T\:?I]PD&N"R\/ZK_ &CK%\6L=/N6T^'^S[D3
MW$EK<\/?M":QXI^)?PC\-Z=X GT_P#\5_AUK'CC2/&>L:S:IJ5Y<V'A[P=XC
M33],\.V*7;BQL[7Q;%8:GJ>J7MA*^K6]Q;Z=I]Q:6YOYP#ZAHKYTU?XB?$[0
M?BY\//AU<6/@'6+;QU=^*M2N$TQ_$=MK7AWP+X6L?.N_$E\UP+FPEE;5=0\-
M^'XK;%O'=:CK7F02B&SG ^BZ "BBB@ HHHH **** "BBB@ HHHH **** "BB
MOG[X:?%WQ?XZ\<?&7PAJW@"'PA-\.H_!]QX:M=3\00W>IZ[9^+=-UV[LKCQ&
M-+M+ZP\/232Z.CK:6%SKTMK8W:/=,;U)+) #Z!HKY_\ #/Q;UVT\9?$GP7\2
MK'PSI[_#KP-X=^(NH^*/"M_J5UH%MH6O/XGCETS5HM5M8+NPUK2T\*7VI$K)
M-#?Z/=V=XD5I()(#Y9>_'#XH>"_@MHOQ6\3#P#/<:OH6I^.T\(>(=3NO#_C'
M6;/6=8GU'PG\.?!^DV&G.ESXEA\-7N@Z%:RW8U*_U;Q5>16=S9V^_P"T2@'U
MYX@T/3_$VAZMX>U9))-,UO3[K3+^.&:2WE>TO(6@G2.>(K)$S1NP#H0RDY!S
M47AKP[IGA+0-*\-:+'+#I6BV<=C813SR7,J6\6=BR3REI)6&3EW))KQCQO\
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
M\JUAD@M8/KNB@#Y<\<_!'Q=XVU?1?$VJWOPWUZ_B^'NK^ -9\)>,?"NK^(O
M$']J:D+R3Q)X:TR36H;RPUFZLTBTC5VO)KJ34--@MK>&\L%AE^U>W?#?P<?A
MYX \&^!3K>I^)?\ A$?#FD^'O[>UF0R:IJPTJSBM!>WC%Y2))A$"$,LIB39$
M992GF-VM% !1110 4444 %%%% !1110 4444 %%%% !7@7Q?^'/Q \>>(_AC
MJGAC6_!FDZ=\-_&MGX]C@U_1]=U&^U35K?P_XK\-2:>TVG:QIUO:Z<]EXF%T
MDOD7%RMW9!"#!,P7WVB@#YMUSX<?$JX^+Y^*EUK/A'Q+H?AS3(K+P)X/O-&U
MI+SPG#/9[?%VHZ0\>N1:7J/C7Q3^\TZUUW4(;=-*T80:-:Q0076M7.IO^&O@
M'QUH_P (%BN(O#=C\2?'.O:G\0_'UCXPTR7Q'HSZUXPU5]5U7P[>Q:7JEEN_
ML/2I+#PSI]U;75Y:6T6AVBK!>6P&?H^B@#YHTSX,>+]"\#?%/1M(\0>$X?$?
MQ8UG4]2U"U30M4L_ 'A6VU7PW9>%[FU\+^'K35A>Q3RVUA'J^H74NH1KJVO7
M5_>S6]LLRQKA?#CX6^/=*\8_"?1_&JZ=?^&?@%\*(M%\-:_I$$NGZ7XD\9ZS
M:0^$1J$>EWFIZEJ$-]X=\$Z%=0W4D[1VHF\;SQ6$DXBN/+^M** /F_P]\*?B
M%;?%7Q=\0/%VO^"_%5MXE^U:!I@?1]>L]5\&?#DINM?"'AI3K%SIEM/>WJIJ
MGBG6F@^T^(M0\IIH[>RTW1[&PP_!/P!\6>&(OA=I6I^+] UO0/@/IVO6WPM@
M&@7UIJ=]>WF@7_A/PY?>.+TZM<0W/_"/^&=0NM/GBT.UL/[7O;AM6>2R,,5E
M7U910!\P^!/@_P"/O#7AKXLZ%XBO/A=XN3XD^-?$GC==.U#POK<OAY+GQ=>P
M3:SHNN:;?:Q?C5M*BM8!%:%#;O+*Q:YB,8V'LO@[\';'X7R^,=8,7AV'7O'6
MIZ;>:I:>#] C\,>%-(T_0M.73-#T/0M'CFN'6WLXFO+V\O[J9[O4M4U._NG6
MW@:WM+?VRB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBOE+]LWXCZK\/?@AJEIX8;76\;_$?6]!^%_@VV\*6LNH
M>+)=1\7WJVNK77AG3[:2&[N]9T;PI%X@UNQ2UF@G2XT^)XKB"0)( #ZMHK\8
MM+\;>*O%_P"S=JWPD'Q)UCP)XR^"WQZ70]0\/_'?X@>(?@QX\^*GPJEAU?QM
MX-\&>)OB!'J8\5>%M>\2^$KVW:+6K35)YY9?"LJ7%R]K+-(.7\1?&'3KC0O@
M5\;(?%?C*\^&/AWP7HND7GP/F_:,UOP[\;O"_B!OB;J.D6_Q(T&2SOXX?VAM
M-O19C0+&Q\1I?1:]H&F17UL'N+J[= #]Q:*_&SQ?\6]0MOAM^T-X%'Q(U:S^
M+%W^W5INE^$/")\6ZC:^/O\ A$]>\??#R_TC3- TC^T%UR'PS>^'WU!X;33H
MUT8:>;^%E6+[0AY9OCI\3/@E\3?V@_$\&N>+_&6G?&GXP_&OX&?#/0K_ %35
M==T?PG\</#6KZ"GPJL=*M;B:YMO#NBZUI/B?6!J%M9QV]M(/#D4P0/ 1* ?M
MY17\^UU=^,_#>C?"?X;Z_P"/?%7CFUT7]J?]IKP5KC>+_P!H_P 7_!F/Q3;>
M$/!.ASVD&M_%?3KV;4],M+'5VN]4TC3 LUM)=2II=K;Q+= CZ6U+Q1;?#_\
M:2^%^MW_ (ZG^('@K7[_ .#GPZ\%^#_ 7[2'B+6/%?P=UR]\,V\%W8^)? 3Z
MC+9?&[P9XJEO(]8U?QUK5M<^(H[&8:IYL:)&6 /UIFOK*WN;.SN+RU@N]0:9
M+"UFN(HKF^>VA:XN$LX'=9;EK>W5IYEA5S%"K2R!4!:K5?D[\?-8L?!7[6NB
M_$GQAXB@^)6A6'B[X7^$?!?A/P9\:=1\+?$_X&>(_$"Z9I&JI'\'K6Y32OB1
MX;\=?VO9:GXE>Z@DUF+0KJX5%?3K)<;VN?$:[\'_ +2_[66F^#_BIJ'B;Q!:
M?LOW'BCPEX4U7QQ#XABTWXDZ=>^/;^XT;PUX16\%E87VBVFEV'GZ)8:8NHQ6
M,"2ZIYYG>>0 _42BOP&O_B9K/A7PIO\ A;\</'/B+P?XV^ 7[//BGX\^,9?B
M3K/C2\\!^+/'GQA\.^&O''B"SU34-3U-_AQK5]X1U'Q$E[I&DRZ1:Z-;6BZA
M!I5D]G'<)](6WB;4-%_9\_X*"Z7X"^(/B?Q#\-OAS=ZG:?![QI+X]UOQ?J.E
M_:/A?X<USQ1INA?$.^U34==U*VT'Q5?7GV:[DUV^N-.N;BXLH[L?9MJ@'ZTT
M5^,^L?$7Q_X$^)G[1'Q0N/&OBJ[^'/A_P5\+OAUXVT6XUS5KS3/"-IX_^!FF
MZGX8^)&CV;W+PZ+>:+X^CM[;Q%J=DD$]QIGBBZU2\E<Z6)HLK4?B=\1OA3X3
M\)Z=;>,/%>IZA^U[^RC\'=#^&-QJ>N:GJ=UI'QZAM_"_@'69- GOKJ=K*^U/
MPWXWL_'%S+;M%+=:CX>U+4+AGE034 ?M;17XY>!U73OVLOC)X7U[QA>_V?\
M#;4/"&A>%/%OBO\ :C\8>&KWP>FE_!?2Y5O[;X(3:@^A?%..ZU%&UG6+K6IU
M3[5)=3W2W<D+EN2\"16FL?"W]HWX;>+_ !GXV\5_$;X9_".;XQ+\8/AG^T[\
M1O%O@+QMJ\&D^.+?0_%MK-I7B6QO/ &OW5S%+<ZW\+WF_P"$7N;6WT[4(-):
M"WMW4 _;JBOPR\;:1#X6U3]C_P /0ZWXLUOP_P"//@5KWQ%\7:9XW_:_^*?P
M@L]6\5ZII?PY:ZUV3XASZ_K&J/)9F>>33/"-NT.E?Z5>26,%E_I#26OBAXCT
MC1-9_;+\8V/QK\;^'?B_\,_&7@:R_9\\.Z7\8/%-U_;%W+\/O!T^D^%M/^&4
MOB&YT7QQIWBG6+IK'4)9_#E_=7JWUS=_;H9?-G4 _<.BOSK^/'B"#Q!\>_@?
M\-OC3XZUSX6_"37_ (0^*_&%ZND>.]:^%FG^+/BMIU_H=N?#&J^.]"U?0-2C
MC\.Z-<WFL6.B6VMV!O)Y/-N%O(T6 ?)>GZ_\9_&\7P/T#X=_%+QEJB:)\=?V
MIO\ A1_B;5/$NIO%\4O!GPFT+3=?\#:9XPU);B/_ (3OPYJ-Y9ZYX/35=86Z
M6:PF6^626:TCNB ?N117Y0:+\9-0^(O[-W_!0#XD>'O$7B>SCBU+Q5<^&5N-
M7U2VU?P+<VWP9\%RW^@6+?:$G\/7WA[Q"=3M[RUT\V8MM7BO)U1)I'=O"O&/
MB\>!?"'BW2/@9\8_&WBO0=9_8G\9^/?BK#_PMGQ-\18OAY\0K*+PC'X4\0Z;
MXKU37]<U7P=X@\0S7_B6RFT6UUJU22#3_MEMI]K]D#N ?NI17XLV7B&WTWP'
M\ O#6J^+=1^&OPT^)WQBBT;XV>+?#'[5GC'XPR?9[7X<MJGA/1]3^*NJZA::
ME\*8/'7B&/[+JFB:/=Z7Y*VJF#5DDO'DK],OA#XF^#FE66C_  Q^'OQ3M/&\
M\.G:]KNB6FH?$.7XA>(YO#VG:\=,U2XBUW4=1U36=9TC0]9NTT7[;>ZAJ,MK
M(8;*>]D=   >Z45^4'QT\:CPK^U[\']4T3QIK$%G>_&CPGX+\5_\(W\>M0\6
M:U>MKWAZ[L(_AUJ/[,_G:;HOAOPHNHR6.IZOXWA76=;M(I?[2,(CN(_)]4^#
M_P 0/#6@_M<_M5:#?_&.7Q#H6E>"_AYXC@L_$OQ#M]<M]$N[2+QMJ'CJ+1]*
M-\+'1[7PW!;0PZQ8Z3IUM_9-I:6PU51*!+( ?H717P-^V[X\^&LOP2\/Z@WC
MSQ)'KWQ%MKBR^ ]CX#^*.H_#BV\:>,?$>C0S^&?$%_XDTG6-#MW\+>&H+BW\
M27]_K.J#PU;:8\LE]:W\]SI]N_QK\9?&.OV%EXHTGQU^T-KK^+/A+^QE\./&
M?P5\0^#/B-?^&]*^)?QKDU+Q-IWB+Q/IZZ#JEK8_%"^N-?T'PYH*:-J<&NV<
M]KJ4SS:4+N]>X0 _<.BOS:D\?G0/VT/A7;ZU\2-4N-6\2?L\>*;[Q5\,KCQW
M;MIMAX\5O ITCP[H_@@7MI86?B#45FOY]+MY[*36M4DO+B:&XDM0JP^?_LJ_
M$[XG>)/VP/%W_"S-$^./A_6OB!\')_%-]X&\:Z-JVD^"?AX]GXZNK/0M/T#3
M;C49-.CTRW\-6-CH[^+HM/M[KQ3XJ?63*L:-&J@'ZRT444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** .%\5?%'X9^!;_3]*\;_$3P+X.U35D632M-\5>+O#_AZ_U.-Y
M_LJ/I]GJ^H6=Q>HUS_HZM;1R*T_[D$R?+2ZM\3_AKH&FWFM:[\0_ VBZ/IVN
M2^&=0U;5O%N@:=IMCXD@V^?X?O+Z\U"&UM=<AW+YNDSRI?Q[EWVXR*^+_BW\
M)/''Q _;8\'ZUH4NG:!X?T;]GMUU'Q-XG^$]G\2/#=_<P?%2SO)?"EE=ZQ=Z
M=IGA_P 2W5DQO;?4+:[N-6MK**62.PDMY))%^8/B!\/;VWTWQYXEOO#7Q2TK
MQWX>_:N_:0\7_"PV?P#U?XS^!O$T7B72/#.EQ:1XU\'C2+MY-!\9VZ?9_#_C
M"+[!9:>UIJ%W!KL1C:WN #]=M>^(WP^\+2Z'#XG\=^#?#DWB:2*'PW%KWB?1
M-(E\0S3F,01:''J%];OJTDQEB$26 N&D,D>P'>N=4^*?#(\1#P>?$6A#Q:VE
M_P!MKX7.KZ?_ ,)$VB^>;;^UQHGVC^TSI?VD&W^WBV^R>>#%YOF#;7Y<>$[:
M;PK\6O$7BW]I7]FOQ#KLWQ+^#WP*TKX=:7X,^%>H_%?PQX$FT/PW)9^,_A-9
MQ:;I^L6?@)K+Q;<'5(YM7FTK19;6:"2?7,V&Y>0?2?CY'\=[']KE?@U<#PT/
MC]+X5,Z7'BH_%V/X%36*?!I-+E^%'_"&,MOX7@U*UC^*(U&+Q,T[HXU@Z6EI
M//<D _7NQ\1>']4M=1OM,UW1]1LM(O-0T[5KRQU.RN[72]0TEBFJV.HW%O/)
M#97FF,K+J%K<O%/9,"+E(R"*PI_B5\.;73](U:Y\?^"K?2O$&FZAK6@ZG/XJ
MT*+3];T?2;5;[5=6TB\DOUMM2TW3+)EO-0O[.2:ULK5EN+F6.(AZ^2/V2/$L
M>B:[\:OA3KOA/XB:1XAO?CQ\;?&MK>ZS\,_'&F>"]3\-ZMXH273[RP\<W^@0
M>#]0;48)5FM;2VUB6ZNH=[Q0ND;L/E?5OV<-;T;2/V\-/LM \::YI/@3X?>*
M? '[-/AV7P[>26&E^%_BKH8^)7CC1_AXD5DTNNB3Q??IX>B;3'NI+*RTJWT)
M NTVT8!^J>C?%KX5>(M#UOQ/X?\ B9\/M=\->&@6\1^(=&\9^'-3T/P^JP_:
M6.MZM9:E/8:4%M_WY-_<0 0_O3\GS5:UWXF?#CPOH6F>*/$WQ \$>'?#.MB
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
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %5[>SM+/SQ:6MO:B
MYN9;RY^SP1P?:+N<@SW4_E*OFW,Q ,L\FZ60@%V) HHH L4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
&%%% '__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6840876544">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Segment Reporting - Segment Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AdjustedEBITDA', window );">Total adjusted EBITDA</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 454,115<span></span>
</td>
<td class="nump">$ 424,552<span></span>
</td>
<td class="nump">$ 317,300<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(41,544)<span></span>
</td>
<td class="num">(40,956)<span></span>
</td>
<td class="num">(42,667)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(60,767)<span></span>
</td>
<td class="num">(47,408)<span></span>
</td>
<td class="num">(51,988)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_NoncashWritedownAndOtherAdjustments', window );">Non-cash write-down and other adjustments (1)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="num">(240)<span></span>
</td>
<td class="num">(3,532)<span></span>
</td>
<td class="num">(2,923)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Non-cash share-based compensation expense (2)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="num">(16,694)<span></span>
</td>
<td class="num">(14,563)<span></span>
</td>
<td class="num">(10,205)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain (Loss) on Extinguishment of Debt, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[3]</sup></td>
<td class="num">(926)<span></span>
</td>
<td class="num">(1,332)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Loss on pension settlement (4)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[4]</sup></td>
<td class="num">(10,920)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_TransactionCostsAndCredityFaciltyFees', window );">Transaction costs and credit facility fees (5)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[5]</sup></td>
<td class="num">(2,724)<span></span>
</td>
<td class="num">(3,883)<span></span>
</td>
<td class="num">(2,145)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessOptimizationExpense', window );">Business optimization expenses (6)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[6]</sup></td>
<td class="num">(1,572)<span></span>
</td>
<td class="num">(952)<span></span>
</td>
<td class="num">(2,912)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_Other', window );">Other</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">879<span></span>
</td>
<td class="num">(850)<span></span>
</td>
<td class="num">(761)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Total before tax</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">319,607<span></span>
</td>
<td class="nump">311,076<span></span>
</td>
<td class="nump">203,699<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,665,669<span></span>
</td>
<td class="nump">2,426,314<span></span>
</td>
<td class="nump">2,025,965<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation', window );">Depreciation and Amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">60,909<span></span>
</td>
<td class="nump">47,408<span></span>
</td>
<td class="nump">51,988<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">60,802<span></span>
</td>
<td class="nump">47,601<span></span>
</td>
<td class="nump">33,261<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember', window );">Domestic [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AdjustedEBITDA', window );">Total adjusted EBITDA</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">428,667<span></span>
</td>
<td class="nump">388,495<span></span>
</td>
<td class="nump">282,450<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,123,251<span></span>
</td>
<td class="nump">1,868,554<span></span>
</td>
<td class="nump">1,612,607<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation', window );">Depreciation and Amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">46,145<span></span>
</td>
<td class="nump">35,586<span></span>
</td>
<td class="nump">37,962<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">36,007<span></span>
</td>
<td class="nump">38,242<span></span>
</td>
<td class="nump">29,258<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember', window );">International [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AdjustedEBITDA', window );">Total adjusted EBITDA</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">25,448<span></span>
</td>
<td class="nump">36,057<span></span>
</td>
<td class="nump">34,850<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">542,418<span></span>
</td>
<td class="nump">557,760<span></span>
</td>
<td class="nump">413,358<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation', window );">Depreciation and Amortization</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">14,764<span></span>
</td>
<td class="nump">11,822<span></span>
</td>
<td class="nump">14,026<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 24,795<span></span>
</td>
<td class="nump">$ 9,359<span></span>
</td>
<td class="nump">$ 4,003<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Includes certain foreign currency and purchase accounting related adjustments, gains/losses on disposal of assets and unrealized mark-to-market adjustments on commodity contracts.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top">Represents pre-tax settlement charges related to the termination of the Company&#8217;s domestic pension plan in the fourth quarter of 2019.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[5]</td>
<td style="vertical-align: top;" valign="top">Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity
issuance, debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[6]</td>
<td style="vertical-align: top;" valign="top">Represents severance and other non-recurring restructuring charges related to the consolidation of certain of our facilities.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_AdjustedEBITDA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents net income before interest expense, taxes, depreciation and amortization, as further adjusted for other non-cash items</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_AdjustedEBITDA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessOptimizationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents charges relating to business optimization and restructuring costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessOptimizationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets. Amount includes additional accelerated depreciation recognized in the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_NoncashWritedownAndOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents information about non-cash write-down and other adjustments. Includes gains/losses on disposal of assets, unrealized mark-to-market adjustments on commodity contracts, and certain foreign currency and purchase accounting related adjustments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_NoncashWritedownAndOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_Other">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents other non-cash items that are not categorized separately.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_Other</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_TransactionCostsAndCredityFaciltyFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement; equity issuance, debt issuance or refinancing; together with certain fees relating to our senior secured credit facilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_TransactionCostsAndCredityFaciltyFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of (increase) decrease to benefit obligation of defined benefit plan from irrevocable action relieving primary responsibility for benefit obligation and eliminating risk for obligation and assets used to effect settlement. Includes, but is not limited to, lump-sum cash payment to participant in exchange for right to receive specified benefits, purchase of nonparticipating annuity contract and change from remeasurement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(10)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanSettlementsBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R91.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847381200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Income Taxes - Unrecognized Tax Benefits (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Unrecognized tax benefit, beginning of period</a></td>
<td class="nump">$ 5,635<span></span>
</td>
<td class="nump">$ 7,122<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions', window );">Increase in unrecognized tax benefit for positions taken in prior period</a></td>
<td class="nump">633<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Increase in unrecognized tax benefit for positions taken in current period</a></td>
<td class="nump">495<span></span>
</td>
<td class="nump">580<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Statute of limitation expirations</a></td>
<td class="num">(43)<span></span>
</td>
<td class="num">(1,818)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities', window );">Settlements</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(249)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Unrecognized tax benefit, end of period</a></td>
<td class="nump">$ 6,720<span></span>
</td>
<td class="nump">$ 5,635<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10B<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=SL37586934-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from settlements with taxing authorities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R95.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847639808">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate', window );">Weighted average discount rate</a></td>
<td class="nump">4.24%<span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average rate for present value of future retirement benefits cash flows, used to determine benefit obligation of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (k)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6840073584">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 8 - Balance Sheet Details - Property and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 478,156<span></span>
</td>
<td class="nump">$ 424,448<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation</a></td>
<td class="num">(161,180)<span></span>
</td>
<td class="num">(145,519)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Total</a></td>
<td class="nump">316,976<span></span>
</td>
<td class="nump">278,929<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandAndLandImprovementsMember', window );">Land and Land Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">18,252<span></span>
</td>
<td class="nump">15,975<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">177,079<span></span>
</td>
<td class="nump">163,161<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">117,114<span></span>
</td>
<td class="nump">103,726<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember', window );">Dies and Tools [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">22,040<span></span>
</td>
<td class="nump">28,198<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">3,955<span></span>
</td>
<td class="nump">2,070<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">99,124<span></span>
</td>
<td class="nump">82,638<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">4,293<span></span>
</td>
<td class="nump">2,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember', window );">Construction in Progress [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 36,299<span></span>
</td>
<td class="nump">$ 26,543<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandAndLandImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandAndLandImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>20
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( &F'65 ?(\\#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+<TXP)6E/S/WJVR;A5ND9T*YKCM+1[873T$7LF<;
M!I99-G\LCNVW<+ZT+/0:S>,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C
M-R."?S]PN -02P,$%     @ :8=94"?HAPZ"    L0   !    !D;V-0<F]P
M<R]A<' N>&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    " !IAUE0XQ*@EN\    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+/:L,P#(=?9?B>*''_@4ESV=BI@\$*&[L966W-XL38&DG??D[6
MIHSM 7:T]/.G3Z *O<(NT'/H/ 6V%.\&U[11H=^*$[-7 !%/Y'3,4Z)-S4,7
MG.;T#$?P&C_TD4 6Q1H<L3::-8S S,]$45<&%0;2W(4+WN",]Y^AF6 &@1IR
MU'*$,B]!U.-$?QZ:"FZ $<847/PND)F)4_5/[-0!<4D.T<ZION_S?C'ET@XE
MO#WM7J9U,]M&UBU2^A6MXK.GK;A.?EW</^P?12T+662%S.1J7Z[5:J.6F_?1
M]8??3=AUQA[L/S:^"M85_+J+^@M02P,$%     @ :8=94)E<G",0!@  G"<
M !,   !X;"]T:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T
M$W-I=MNTF83M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY
M\^XN8NB&B)3R>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2
MP]R"BPA+>!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 <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_K
MFVB<"HU;3]-K=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K
M>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>"(<7<K_WUE[O)
MI#-ZG7TZSFN4?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R
M.AQG0GS/]O:1I24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG
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
M(#N?3:W_-;VG.LL')[F.YZ;NQO^SY[>N;PY3*=G*H?I^ONZ/X_5C*O\S3 Z
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
M?86AGI7O#<5_ARLP [=.S!ZI8,I]O;156O!!Q5CA]+T?J]J-W:!_HRT3\$#
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
M1N=?-O:_1G3@4]E=^1%J_0=;# 6U"\=/_FRF,9L,A_W\@]CRC8N_4$L#!!0
M   ( &F'65 '<T1KMP$  -(#   9    >&PO=V]R:W-H965T<R]S:&5E=#$P
M+GAM;&U3VV[<(!#]%<0'A#7K3=*5;2F;JFJE5EJE:OK,VF,;!8P+>)W^?0?L
MN&[J%V"&<\Y<&++1V!?7 GCRJE7G<MIZWQ\9<V4+6K@;TT.'-[6Q6G@T;<-<
M;T%4D:05X[O=+=-"=K3(HN]LB\P,7LD.SI:X06MA?Y] F3&G"7US/,FF]<'!
MBJP7#7P'_Z,_6[38HE))#9V3IB,6ZIP^),=3&O 1\"QA=*LS"95<C'D)QI<J
MI[N0$"@H?5 0N%WA$90*0IC&KUF3+B$#<7U^4_\4:\=:+L+!HU$_9>7;G-Y3
M4D$M!N6?S/@9YGH.E,S%?X4K*(2'3#!&:92+*RD'YXV>53 5+5ZG779Q'Z>;
M]##3M@E\)O"%<!_CL"E0S/RC\*+(K!F)G7K?B_#$R9%C;\K@C*V(=YB\0^^U
MX/R0L6L0FC&G"<-7F&1!,%1?0O"M$"?^'YUOT_>;&>XC?;^F)Q^V!=)-@30*
MI/^4>/NNQ"W,W;L@;-53#;:)T^1(:88N3O+*NPSL X]O\A<^3?LW81O9.7(Q
M'E\V]K\VQ@.FLKO!$6KQ@RV&@MJ'XQV>[31FD^%-/_\@MGSCX@]02P,$%
M  @ :8=94#"AJ1.W 0  T@,  !D   !X;"]W;W)K<VAE971S+W-H965T,3$N
M>&UL;5/;;IPP$/T5RQ\0@Y>DFQ4@91-%K=1*JU1-G[TP@!5?J&V6].]K&T))
MPHOM&9]SYN)Q/FKS8CL AUZE4+; G7/]@1!;=2"9O=(]*'_3:".9\Z9IB>T-
ML#J2I" T26Z(9%SA,H^^DRES/3C!%9P,LH.4S/P]@M!C@5/\YGCB;>>"@Y1Y
MSUKX">Y7?S+>(HM*S24HR[5"!IH"WZ6'8Q;P$?#,8;2K,PJ5G+5^"<:WNL!)
M2 @$5"XH,+]=X!Z$"$(^C3^S)EY"!N+Z_*;^&&OWM9R9A7LM?O/:=07>8U1#
MPP;AGO3X%>9ZKC&:B_\.%Q >'C+Q,2HM;%Q1-5BGY:SB4Y'L==JYBOLXW63[
MF;9-H#.!+H1]C$.F0#'S!^98F1L](C/UOF?AB=,#];VI@C.V(M[YY*WW7DI*
M]SFY!*$9<YPP=(5)%P3QZDL(NA7B2#_1Z39]MYGA+M)W:WIZNRV0;0ID42![
M5^+MAQ(W,+OD0Q"RZJD$T\9ILJC2@XJ3O/(N WM'XYO\AT_3_H.9EBN+SMKY
MEXW];[1VX%-)KOP(=?Z#+8: QH7C%W\VTYA-AM/]_(/(\HW+?U!+ P04
M" !IAUE0U$)8-[4!  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,BYX
M;6QM4]MNW" 0_17$!X0UWC3IRK:4352U4BNM4K5]9NVQC0(>%_ Z_?L"]CIN
MZA=@AG/.7!BR$<V+;0$<>=6JLSEMG>L/C-FR!2WL#?;0^9L:C1;.FZ9AMC<@
MJDC2BO'=[@/30G:TR*+O9(H,!Z=D!R=#[*"U,'^.H'#,:4*OCF?9M"XX6)'U
MHH'OX'[T)^,MMJA44D-G)7;$0)W3A^1PW =\!/R4,-K5F81*SH@OP?A2Y707
M$@(%I0L*PF\7> 2E@I!/X_>L29>0@;@^7]4_Q=I]+6=AX1'5+UFY-J?WE%10
MBT&Y9QP_PUS/+25S\5_A LK#0R8^1HG*QI64@W6H9Q6?BA:OTRZ[N(_3S=V5
MMDW@,X$OA/M(8%.@F/F3<*+(#([$3+WO17CBY,!];\K@C*V(=SYYZ[V7@J=)
MQBY!:,8<)PQ?8=X0S*LO(?A6B"/_C\ZWZ>EFAFFDIVMZ\G%;8+\IL(\"^W]*
MY.]*W,*D[X*P54\UF"9.DR4E#EV<Y)5W&=@''M_D#3Y-^S=A&ME9<D;G7S;V
MOT9TX%/9W?@1:OT'6PP%M0O'.W\VTYA-AL-^_D%L^<;%7U!+ P04    " !I
MAUE0R3:O6+<!  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6QM
M4]MNW" 0_17$!X0UZVS3E6TIFZAJI59:I6K[S-KCBP*,"WB=_GT!.ZZ;^ 68
MX9PS%X9L1/-L6P!'7I34-J>M<_V1,5NVH(2]P1ZTOZG1*.&\:1IF>P.BBB0E
M&=_M#DR)3M,BB[ZS*3(<G.PTG VQ@U+"_#F!Q#&G"7UU/'5-ZX*#%5DO&O@.
M[D=_-MYBBTK5*="V0TT,U#F]3XZG-. CX&<'HUV=2:CD@O@<C"]53G<A(9!0
MNJ @_':%!Y R"/DT?L^:= D9B.OSJ_JG6+NOY2(L/*#\U56NS>D=)1748I#N
M"<?/,-=S2\E<_%>X@O3PD(F/4:*T<27E8!VJ6<6GHL3+M'<Z[N-TDQYFVC:!
MSP2^$.YB'#8%BID_"B>*S.!(S-3[7H0G3H[<]Z8,SMB*>.>3M]Y[+?@^S=@U
M",V8TX3A*TRR()A77T+PK1 G_H[.M^G[S0SWD;Y?TY./VP+IID :!=+_2KQ]
M4^(6YO F"%OU5(%IXC194N*@XR2OO,O WO/X)O_@T[1_$Z;IM"47=/YE8_]K
M1 <^E=V-'Z'6?[#%D%"[</S@SV8:L\EPV,\_B"W?N/@+4$L#!!0    ( &F'
M65 38]H:M@$  -(#   9    >&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;&U3
MVV[<(!#]%<0'A#7K--N5;2F;J&JE5EJE:OK,VF,;!8P+>)W^?0?LN&[J%V"&
M<\Y<&++1V!?7 GCRJE7G<MIZWQ\9<V4+6K@;TT.'-[6Q6G@T;<-<;T%4D:05
MX[O=!Z:%[&B11=_9%ID9O)(=G"UQ@];"_CZ!,F-.$_KF>))-ZX.#%5DO&O@.
M_D=_MFBQ1:62&CHG34<LU#F]3XZG-. CX%G"Z%9G$BJY&/,2C"]53G<A(5!0
M^J @<+O" R@5A#"-7[,F74(&XOK\IOXIUHZU7(2#!Z-^RLJW.3U04D$M!N6?
MS/@9YGIN*9F+_PI74 @/F6",TB@75U(.SAL]JV J6KQ.N^SB/DXW*9]IVP0^
M$_A".,0X; H4,W\47A29-2.Q4^][$9XX.7+L31F<L17Q#I-WZ+T6?'^7L6L0
MFC&G"<-7F&1!,%1?0O"M$"?^'YUOT_>;&>XC?;^F)Q^W!=)-@30*I/^4>'A7
MXA;F?1"VZJD&V\1I<J0T0Q<G>>5=!O8^/B+["Y^F_9NPC>P<N1B/+QO[7QOC
M 5/9W> (M?C!%D-![</Q#L]V&K/)\*:??Q!;OG'Q!U!+ P04    " !IAUE0
MM&<;GK8!  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-2YX;6QM4V%O
MW" ,_2N('U 2+MVZ4Q*IUVG:I$TZ=5KWF4N<!!7B#,BE^_<#DF99ER^ C=_S
MLS'YA.;9=@".O&C5VX)VS@U'QFS5@1;V!@?H_4V#1@OG3=,R.Q@0=01IQ7B2
MO&-:R)Z6>?2=39GCZ)3LX6R(';46YO<)%$X%3>FKXU&VG0L.5N:#:.$[N!_#
MV7B+K2RUU-!;B3TQT!3T/CV>LA ? YXD3'9S)J&2"^)S,+[4!4V"(%!0N< @
M_':%!U J$'D9OQ9.NJ8,P.WYE?U3K-W7<A$6'E#]E+7K"GI'20V-&)5[Q.DS
M+/7<4K(4_Q6NH'QX4.)S5*AL7$DU6H=Z8?%2M'B9=]G'?9IO;OD"VP?P!<!7
MP%W,P^9$4?E'X429&YR(F7L_B/#$Z9'[WE3!&5L1[[QXZ[W7DF=)SJZ!:(DY
MS3%\$Y.N$<RSKRGX7HH3_P_.]^&'786'"#]LX>F'?8)LER"+!-D_):9O2MR+
M>:N2;7JJP;1QFBRI<.SC)&^\Z\#>QT=D?\/G:?\F3"M[2R[H_,O&_C>(#KR4
MY,:/4.<_V&HH:%PXOO=G,X_9;#@<EA_$UF]<_@%02P,$%     @ :8=94/R^
MSE&W 0  T@,  !D   !X;"]W;W)K<VAE971S+W-H965T,38N>&UL;5/;;MP@
M$/T5Q >$->MMTY5M*9LH:J566J5J^LS:8QL%/"[@=?KW!>RX;NH78(9SSEP8
MLA'-BVT!''G5JK,Y;9WKCXS9L@4M[ WVT/F;&HT6SINF8;8W(*I(THKQW>X#
MTT)VM,BB[VR*# >G9 =G0^R@M3"_3Z!PS&E"WQQ/LFE=<+ BZT4#W\']Z,_&
M6VQ1J:2&SDKLB($ZIW?)\90&? 0\2QCMZDQ")1?$EV!\J7*Z"PF!@M(%!>&W
M*]R#4D'(I_%KUJ1+R$!<G]_4'V/MOI:+L'"/ZJ>L7)O36THJJ,6@W!..GV&N
MYT#)7/Q7N(+R\)")CU&BLG$EY6 =ZEG%IZ+%Z[3++N[C=',XS+1M I\)?"'<
MQCAL"A0S?Q!.%)G!D9BI][T(3YP<N>]-&9RQ%?'.)V^]]UKP=)^Q:Q":,:<)
MPU>89$$PK[Z$X%LA3OP_.M^F[S<SW$?Z?DU//FT+I)L":11(_RDQ?5?B%N;P
M+@A;]52#:>(T65+BT,5)7GF7@;WC\4W^PJ=I_R9,(SM++NC\R\;^UX@.?"J[
M&S]"K?]@BZ&@=N'XT9_--&:3X;"??Q!;OG'Q!U!+ P04    " !IAUE0P [D
M";<!  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6QM4]MNW" 0
M_17$!X0UZR3;E6TIFZIJI59:I6K[S-IC&P4\+N!U^O<%[+ANXA=@AG/.7!BR
M$<VS;0$<>=&JLSEMG>N/C-FR!2WL#?;0^9L:C1;.FZ9AMC<@JDC2BO'=[HYI
M(3M:9-%W-D6&@U.R@[,A=M!:F#\G4#CF-*&OCB?9M"XX6)'UHH'OX'[T9^,M
MMJA44D-G)7;$0)W3A^1X2@,^ GY*&.WJ3$(E%\3G8'RI<KH+"8&"T@4%X;<K
M/()20<BG\7O6I$O(0%R?7]4_Q=I]+1=AX1'5+UFY-J<'2BJHQ:#<$XZ?8:[G
MEI*Y^*]P!>7A(1,?HT1EXTK*P3K4LXI/18N7:9==W,?I)DUFVC:!SP2^$ XQ
M#IL"Q<P_"B>*S.!(S-3[7H0G3H[<]Z8,SMB*>.>3M]Y[+7AZE[%K$)HQIPG#
M5YAD03"OOH3@6R%._!V=;]/WFQGN(WV_IB<?M@7238$T"J3_E7C_IL0MS.%-
M$+;JJ0;3Q&FRI,2ABY.\\BX#^\#CF_R#3]/^39A&=I9<T/F7C?VO$1WX5'8W
M?H1:_\$60T'MPO'>G\TT9I/AL)]_$%N^<?$74$L#!!0    ( &F'65 1V&X;
MM@$  -(#   9    >&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;&U3VVZ<,!#]
M%<L?$(.7M,D*D+*IJE9JI56JIL]>&,"*C:EMEO3O.S:$HI07VS,^Y\S%XWPR
M]L5U )Z\:M6[@G;>#T?&7-6!%N[&#-#C36.L%AY-VS(W6!!U)&G%>))\8%K(
MGI9Y])UMF9O1*]G#V1(W:BWLGQ,H,Q4TI6^.)]EV/CA8F0^BA1_@?PYGBQ9;
M56JIH7?2],1"4]"']'C* CX"GB5,;G,FH9*+,2_!^%H7- D)@8+*!P6!VQ4>
M0:D@A&G\7C3I&C(0M^<W]<^Q=JSE(AP\&O5+UKXKZ!TE-31B5/[)3%]@J>>6
MDJ7X;W %A?"0"<:HC')Q)=7HO-&+"J:BQ>N\RS[NTWR3I0MMG\ 7 E\)=S$.
MFP/%S#\)+\K<FHG8N?>#"$^<'CGVI@K.V(IXA\D[]%Y+GMWG[!J$%LQIQO -
M)ET1#-77$'POQ(G_1^?[],-NAH=(/VSIZ?V^0+8KD$6!;"MPF[PK<0_SODBV
MZ:D&V\9I<J0R8Q\G>>-=!_:!QS?Y!Y^G_;NPK>P=N1B/+QO[WQCC 5-);G"$
M.OQ@JZ&@\>'X$<]V'K/9\&98?A!;OW'Y%U!+ P04    " !IAUE0XD%1N[8!
M  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6QM4]MNG# 0_17+
M'Q OAJ3I"I"RB:)6:J55JJ;/7AC BB_$-DOZ][4-2TG"B^T9GW/FXG$^:O-B
M.P"'WJ10ML"=<_V>$%MU()F]TCTH?]-H(YGSIFF)[0VP.I*D('2WNR&2<87+
M//J.ILSUX 17<#3(#E(R\_< 0H\%3O#%\<3;S@4'*?.>M? +W._^:+Q%%I6:
M2U"6:X4,- 6^2_:'+. CX)G#:%=G%"HY:?T2C.]U@7<A(1!0N:# _':&>Q B
M"/DT7F=-O(0,Q/7YHOX8:_>UG)B%>RW^\-IU!;[%J(:&#<(]Z?$;S/5<8S07
M_P/.(#P\9.)C5%K8N*)JL$[+6<6G(MG;M',5]W&Z22^T;0*="70AW$8"F0+%
MS!^88V5N](C,U/N>A2=.]M3WI@K.V(IXYY.WWGLNZ37-R3D(S9C#A*$K3+(@
MB%=?0M"M$ ?ZB4ZWZ>EFAFFDIVMZ\G5;(-L4R*) ]J[$]$.)6YCL0Q"RZJD$
MT\9ILJC2@XJ3O/(N WM'XYO\AT_3_I.9EBN+3MKYEXW];[1VX%/97?D1ZOP'
M6PP!C0O'+_YLIC&;#*?[^0>1Y1N7_P!02P,$%     @ :8=94#F415ZX 0
MT@,  !D   !X;"]W;W)K<VAE971S+W-H965T,C N>&UL;5/;;MP@$/T5Q >$
M-;N;I"O;4C95E4JMM$K5Y)FUQS8*& ?P.OW[#MAQW-0OP SGG+DPI(.Q+ZX!
M\.1-J]9EM/&^.S#FB@:T<%>F@Q9O*F.U\&C:FKG.@B@C22O&-YMKIH5L:9Y&
MW\GFJ>F]DBV<+'&]UL+^.8(R0T83^NYXE'7C@X/E:2=J^ 7^=W>R:+%9I90:
M6B=-2RQ4&;U+#L==P$? DX3!+<XD5'(VYB48W\N,;D)"H*#P04'@=H%[4"H(
M81JODR:=0P;B\ORN_BW6CK6<A8-[HYYEZ9N,WE)20B5ZY1_-\ !3/7M*IN)_
MP 44PD,F&*,PRL65%+WS1D\JF(H6;^,NV[@/X\UV/]'6"7PB\)EP&^.P,5#,
M_*OP(D^M&8@=>]^)\,3)@6-OBN",K8AWF+Q#[R7G^WW*+D%HPAQ'#%]@DAG!
M4'T.P=="'/E_=+Y.WZYFN(WT[9*>?%D7V*T*[*+ [I\2KS^5N(:Y^12$+7JJ
MP=9QFAPI3-_&25YXYX&]X_%-/N#CM/\4MI:M(V?C\65C_RMC/& JFRL<H08_
MV&PHJ'PXWN#9CF,V&MYTTP]B\S?._P)02P,$%     @ :8=94%&@1 FX 0
MT@,  !D   !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL;5/;;MP@$/T5Q <$
MF]VDFY5M*9NJ:J566J5J^LS:8QL%C MXG?Y]!^RX;NH78(9SSEP8LM'8%]<"
M>/*J5>=RVGK?'QES90M:N!O30X<WM;%:>#1MPUQO0521I!7C27+'M) =+;+H
M.]LB,X-7LH.S)6[06MC?)U!FS&E*WQQ/LFE]<+ BZT4#W\'_Z,\6+;:H5%)#
MYZ3IB(4ZIP_I\;0/^ AXEC"ZU9F$2B[&O 3C2Y73)"0$"DH?% 1N5W@$I8(0
MIO%KUJ1+R$!<G]_4/\7:L9:+</!HU$]9^3:G!THJJ,6@_),9/\-<SRTE<_%?
MX0H*X2$3C%$:Y>)*RL%YHV<53$6+UVF77=S'Z6;'9]HV@<\$OA .,0Z; L7,
M/PHOBLR:D=BI][T(3YP>.?:F#,[8BGB'R3OT7@M^>\C8-0C-F-.$X2M,NB 8
MJB\A^%:($_^/SK?IN\T,=Y&^6]/3^VV!_:; /@KL_RGQ_EV)&YB[Y%T0MNJI
M!MO$:7*D-$,7)WGE70;V(3XB^PN?IOV;L(WL'+D8CR\;^U\;XP%326YPA%K\
M8(NAH/;A^ '/=AJSR?"FGW\06[YQ\0=02P,$%     @ :8=94"([[1BV 0
MT@,  !D   !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL;5/;;MP@$/T5Q >$
M-=ZDZ<JVE$U4M5(KK5(U?6;ML8T"Q@6\3O^^ W8<-_$+,,,Y9RX,V6CLLVL!
M/'G1JG,Y;;WO#XRYL@4MW)7IH<.;VE@M/)JV8:ZW(*I(THKQW>Z&:2$[6F31
M=[)%9@:O9 <G2]R@M;!_CZ#,F-.$OCH>9=/ZX&!%UHL&?H+_U9\L6FQ1J:2&
MSDG3$0MU3N^2PW$?\!'P)&%TJS,)E9R->0[&MRJGNY 0*"A]4!"X7> >E I"
MF,:?69,N(0-Q?7Y5_Q)KQUK.PL&]4;]EY=N<WE)202T&Y1_-^!7F>JXIF8O_
M#A=0" ^98(S2*!=74@[.&SVK8"I:O$R[[.(^3C?I]4S;)O"9P!?";8S#ID Q
M\P?A19%9,Q([];X7X8F3 \?>E,$96Q'O,'F'WDO!;Y*,78+0C#E.&+["O"$8
MJB\A^%:((_] Y]OT=#/#--+3-3WYO"VPWQ381X']?R7R=R5N8=)W0=BJIQIL
M$Z?)D=(,79SDE7<9V#L>W^0-/DW[#V$;V3ER-AY?-O:_-L8#IK*[PA%J\8,M
MAH+:A^,G/-MIS";#FW[^06SYQL4_4$L#!!0    ( &F'65#?!]T@MP$  -(#
M   9    >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;&U3VVZ<,!#]%<L?$"]>
M0M,5(&431:W42JM4;9Z],( 57XAMEO3O:QM"2<*+[1F?<^;B<3YJ\VP[ (=>
MI5"VP)US_8$06W4@F;W2/2A_TV@CF?.F:8GM#; ZDJ0@=+?+B&1<X3*/OI,I
M<STXP16<#+*#E,S\/8+08X$3_.9XY&WG@H.4><]:^ 7N=W\RWB*+2LTE*,NU
M0@:: M\FAV,:\!'PA\-H5V<4*CEK_1R,[W6!=R$A$%"YH,#\=H$[$"((^31>
M9DV\A S$]?E-_2'6[FLY,PMW6CSQVG4%OL&HAH8-PCWJ\1O,]5QC-!?_ RX@
M/#QDXF-46MBXHFJP3LM9Q:<BV>NT<Q7W<;K)LIFV3: S@2Z$FQB'3(%BYO?,
ML3(W>D1FZGW/PA,G!^I[4P5G;$6\\\E;[[V4-$MS<@E",^8X8>@*DRP(XM67
M$'0KQ)%^HM-M^GXSPWVD[]?TY.NV0+HID$:!]%V)UQ]*W,)D'X*054\EF#9.
MDT65'E2<Y)5W&=A;&M_D/WR:]I_,M%Q9=-;.OVSL?Z.U Y_*[LJ/4.<_V&((
M:%PX?O%G,XW99#C=SS^(+-^X_ =02P,$%     @ :8=94%#IHBFW 0  T@,
M !D   !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL;5/;;MP@$/T5Q >$->LD
MVY5M*9NJ:J566J5J^LS:8QL%C MXG?Y]!^RX;NH78(9SSEP8LM'8%]<">/*J
M5>=RVGK?'QES90M:N!O30X<WM;%:>#1MPUQO0521I!7CN]T=TT)VM,BB[VR+
MS Q>R0[.EKA!:V%_GT"9,:<)?7,\R:;UP<&*K!<-? ?_HS];M-BB4DD-G9.F
M(Q;JG#XDQU,:\!'P+&%TJS,)E5R,>0G&ERJGNY 0*"A]4!"X7>$1E I"F,:O
M69,N(0-Q?7Y3_Q1KQUHNPL&C43]EY=N<'BBIH!:#\D]F_ QS/;>4S,5_A2LH
MA(=,,$9IE(LK*0?GC9Y5,!4M7J===G$?IYOT=J9M$_A,X OA$..P*5#,_*/P
MHLBL&8F=>M^+\,3)D6-ORN",K8AWF+Q#[[7@=_<9NP:A&7.:,'R%218$0_4E
M!-\*<>+_T?DV?;^9X3[2]VMZ\F%;(-T42*- ^D^)AW<E;F'>!V&KGFJP39PF
M1THS='&25]YE8!]X?)._\&G:OPG;R,Z1B_'XLK'_M3$>,)7=#8Y0BQ]L,134
M/ASO\6RG,9L,;_KY!['E&Q=_ %!+ P04    " !IAUE0,:MT"K8!  #2 P
M&0   'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6QM4V%OW" ,_2N('U 2+EV[
M4Q*IUVG:I$TZ==KVF4N<!!5"!N32_?L9DF99ER^ C=_SLS'Y9.RSZP \>=&J
M=P7MO!^.C+FJ RW<C1F@QYO&6"T\FK9E;K @Z@C2BO$D><>TD#TM\^@[VS(W
MHU>RA[,E;M1:V-\G4&8J:$I?'4^R[7QPL#(?1 O?P'\?SA8MMK+44D/OI.F)
MA::@#^GQE(7X&/!#PN0V9Q(JN1CS'(S/=4&3( @45#XP"-RN\ A*!2*4\6OA
MI&O* -R>7]D_QMJQEHMP\&C43UG[KJ#WE-30B%'Y)S-]@J6>6TJ6XK_ %12&
M!R68HS+*Q954H_-&+RPH18N7>9=]W*?YYC9;8/L O@#X"KB/>=B<*"K_(+PH
M<VLF8N?>#R(\<7KDV)LJ.&,KXAV*=^B]EOPNR=DU$"TQISF&;V+2-8(A^YJ"
M[Z4X\?_@?!]^V%5XB/##%IZ^WR?(=@FR2)#]4V+ZIL2]F+<JV::G&FP;I\F1
MRHQ]G.2-=QW8!Q[?Y&_X/.U?A6UE[\C%>'S9V/_&& \H);G!$>KP@ZV&@L:'
MXQV>[3QFL^'-L/P@MG[C\@]02P,$%     @ :8=94$3O%+.W 0  T@,  !D
M  !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL;5/;;MP@$/T5Q >$->MMTI5M
M*9NH:J566J5J^\S:8QL%C MXG?Y]!^RX;N(78(9SSEP8LM'89]<">/*B5>=R
MVGK?'QES90M:N!O30X<WM;%:>#1MPUQO0521I!7CN]T'IH7L:)%%W]D6F1F\
MDAV<+7&#UL+^.8$R8TX3^NIXDDWK@X,562\:^ [^1W^V:+%%I9(:.B=-1RS4
M.;U/CJ<TX"/@IX31K<XD5'(QYCD87ZJ<[D)"H*#T04'@=H4'4"H(81J_9TVZ
MA S$]?E5_5.L'6NY" </1OV2E6]S>D=)!;48E'\RXV>8ZSE0,A?_%:Z@$!XR
MP1BE42ZNI!R<-WI6P52T>)EVV<5]G&X.Z4S;)O"9P!?"78S#ID Q\T?A19%9
M,Q([];X7X8F3(\?>E,$96Q'O,'F'WFO!;_<9NP:A&7.:,'R%218$0_4E!-\*
M<>+OZ'R;OM_,<!_I^S4]^;@MD&X*I%$@_:_$]$V)6YC#FR!LU5,-MHG3Y$AI
MABY.\LJ[#.P]CV_R#SY-^S=A&]DY<C$>7S;VOS;& Z:RN\$1:O&#+8:"VH?C
M+9[M-&:3X4T__R"V?./B+U!+ P04    " !IAUE0"(J\9K0!  #2 P  &0
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
M\"(T  0E'$!Q75,.**+6@T )$U!<_C2N;5Z$-H"@E ]P!Z!Q>?,B\@$"I7R
MFP"-*YP7D0\0*.4#W =H7.2<1CY H)0/<"N@<9US&OD @5(^P-V QJ7.:>0#
M!$KX@.%^P.)2YS3T 00E?,!P/V!QJ7,:^@""$CY@N!\P4.HL] $$A3X@-T-)
M+?71CV,FVZESXV?!F]UQY'OP$Q_Y#^_GQ>]"'\O&9"_*NM'(#S 'I:QTN11W
MKL9.;D0=%Y4\V.YU[MYU/Z?U"ZO:808EXR"\^0=02P,$%     @ :8=94%(+
M"AJV 0  T@,  !D   !X;"]W;W)K<VAE971S+W-H965T,S N>&UL;5/;;MP@
M$/T5Q >$7>Q<M+(M95-5K=1*JT1MGUE[;*. QP&\3O\^@!W72?T"S##GS)EA
MR$8TS[8%<.15J\[FM'6N/S!FRQ:TL%?80^=O:C1:.&^:AMG>@*@B2"O&=[L;
MIH7L:)%%W\D4&0Y.R0Y.AMA!:V'^'D'AF-,]?7<\RJ9UP<&*K!<-/('[U9^,
MM]C"4DD-G978$0-U3N_WAV,:XF/ ;PFC79U)J.2,^!R,[U5.=T$0*"A=8!!^
MN\ #*!6(O(R7F9,N*0-P?7YG_QIK][6<A84'5']DY=J<WE%202T&Y1YQ_ 9S
M/=>4S,7_@ LH'QZ4^!PE*AM74@[6H9Y9O!0M7J===G$?IYM;/L.V 7P&\ 5P
M%_.P*5%4_D4X460&1V*FWO<B//'^P'UORN",K8AW7KSUWDN1<)ZQ2R":8XY3
M#%_%[)<(YMF7%'PKQ9'_!^?;\&1381+AR0>%R39!NDF01H+T T'ZJ<2MF.M/
M2=BJIQI,$Z?)DA*'+D[RRKL,['U\1/8O?)KVG\(TLK/DC,Z_;.Q_C>C 2]E=
M^1%J_0=;# 6U"\=;?S;3F$V&PW[^06SYQL4;4$L#!!0    ( &F'65!H"4#L
MP@$  #<$   9    >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM;&U486_;(!#]
M*X@?4!R<M%UD6VHZ39VT2E&G;9^)?;91P;B X_;?#[#CN1E? G=^]]X[X)*-
M2K^:%L"B=RDZD^/6VGY/B"E;D,S<J!XZ]Z566C+K0MT0TVM@52B2@M DN262
M\0X76<@==9&IP0K>P5$C,TC)],<!A!ISO,&7Q MO6NL3I,AZUL!/L+_ZHW81
M65@J+J$S7'5(0YWCA\W^L//X /C-832K/?*=G)1Z]<'W*L>)-P0"2NL9F%O.
M\ A">")GXVWFQ(ND+USO+^S?0N^NEQ,S\*C$'U[9-L?W&%50LT'8%S4^P=S/
M#J.Y^1]P!N'@WHG3*)4PX1>5@[%*SBS.BF3OT\J[L(XS_Z4L7D#G GI50":A
MX/PKLZS(M!J1GLZ^9_Z*-WOJSJ;TR7 4X9LS;USV7*3T-B-G3S1C#A.&KC";
M!4$<^R)!8Q('^E\YC9>G48=I*$\_.4SC!-LHP380;#\1W%VU&,/<QT5V49%=
MA.#+E4@$DR97(F1U<1)T$YZL0:4:NC NJ^PR%0\T7/P_^#12STPWO#/HI*Q[
M/N&2:Z4L."O)C?/2NBE> @&U]=L[M]?36YX"J_IY3,GR7U'\!5!+ P04
M" !IAUE0P4DX!+8!  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970S,BYX
M;6QM4]MNW" 0_17$!X1=[*31RK:4354E4BNM4K5Y9NWQ10'& ;Q._[Z '<=-
M_0+,,.?,F6'(1C0OM@5PY$U);7/:.M<?&+-E"TK8*^Q!^YL:C1+.FZ9AMC<@
MJ@A2DO'=[H8IT6E:9-%W,D6&@Y.=AI,A=E!*F#]'D#CF=$_?'4]=T[K@8$76
MBP9^@OO5GXRWV,)2=0JT[5 3 W5.[_:'8QKB8\#O#D:[.I-0R1GQ)1B/54YW
M01!(*%U@$'Z[P#U(&8B\C->9DRXI W!]?F?_%FOWM9R%A7N4SUWEVIS>4E)!
M+0;IGG!\@+F>:TKFXK_#!:0/#TI\CA*EC2LI!^M0S2Q>BA)OT][IN(_3S74Z
MP[8!? ;P!7 ;\[ I453^53A19 9'8J;>]R(\\?[ ?6_*X(RMB'=>O/7>2Y$D
M^XQ= M$<<YQB^"KF(X)Y]B4%WTIQY/_!^38\V5281'BR5LB3;8)TDR"-!.D_
M)?)/)6[%?$["5CU58)HX39:4..@XR2OO,K!W/+[)1_@T[3^$:3IMR1F=?]G8
M_QK1@9>RN_(CU/H/MA@2:A>.7_S93&,V&0[[^0>QY1L7?P%02P,$%     @
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
M^81+;I2RX*PD=\Y+Y[IX70AHK)]^=',]O^5Y8=6PM"E9_Q7E'U!+ P04
M" !IAUE0^-T(H,8!   W!   &0   'AL+W=O<FMS:&5E=',O<VAE970S-RYX
M;6QM5-MNW" 0_17$!X1=;"?;E6TIFZIJI59:I6KZS-KCB\+%!;Q._[Z '=?=
M\F)@.'/.&6"<3TJ_F@[ HC?!I2EP9^UP),14'0AF[M0 TNTT2@MFW5*WQ P:
M6!V2!"=TM[LG@O42EWF(G769J]'R7L)9(S,*P?3O$W U%7B/WP//?=M9'R!E
M/K 6OH/],9RU6Y&5I>X%2-,KB30T!7[<'T^9QP? 2P^3V<R1K^2BU*M??*D+
MO/.&@$-E/0-SPQ6>@'-/Y&S\6CCQ*ND3M_-W]D^A=E?+A1EX4OQG7]NNP >,
M:FC8R.VSFC[#4D^&T5+\5[@"=W#OQ&E4BIOP1=5HK!(+B[,BV-L\]C*,T[R3
M?EC2X@ET2:!KPB'HD%DH./_(+"MSK2:DY[,?F+_B_9&ZLZE\,!Q%V'/FC8M>
MRR1+<W+U1 OF-&/H!K-?$<2QKQ(T)G&B_Z73>'H2=9B$]&3KD"9Q@C1*D :"
M])\2LYL28YC[N$@6%<DB! \W(C',X4:$;"Y.@&[#DS6H4J,,[;*)KEWQ2,/%
M_X7/+?6-Z;:7!EV4=<\G7'*CE 5G97?GO'2NB]<%A\;ZZ8.;Z_DMSPNKAJ5-
MR?JO*/\ 4$L#!!0    ( &F'65#\YRMS[0$  &8%   9    >&PO=V]R:W-H
M965T<R]S:&5E=#,X+GAM;'5486^;,!#]*X@?4!,G$!H!4M.IVJ1-BCJM^^S
M!5!M3&TG=/]^MJ$,L>L7[#N_>^_.YBX;I'K5#8 )W@7O=!XVQO0'0G39@&#Z
M3O;0V9.+5((9:ZJ:Z%X!JWR0X(1&44($:[NPR+SOI(I,7@UO.SBI0%^%8.K/
M$;@<\G 3?CB>V[HQSD&*K&<U_ 3SJS\I:Y&9I6H%=+J57:#@DH</F\,Q=7@/
M>&EAT(M]X"HY2_GJC&]5'D8N(>!0&L? ['*#1^#<$=DTWB;.<)9T@<O]!_N3
MK]W6<F8:'B7_W5:FR<,T#"JXL"LWSW+X"E,]<1A,Q7^'&W +=YE8C5)R[;]!
M>=5&BHG%IB+8^[BVG5^'\62_F\+P #H%T#D@]3ID%/*9?V&&%9F20Z#&N^^9
M>^+-@=J[*9W37X4_L\EKZ[T5V_@^(S='-&&.(X8N,)L902S[+$$QB2/]+YSB
MX5LTPZT/WRXSI%N<8(<2[#S!;DF01*L2,<PG1<:H2(P0T)4(AOFDD@0521""
MW4H$P\2XR!X5V2,$R4H$P^QQD10521&"="6"8>Y7(F3QGPM0M>]P'93RVOGI
MLO#.0^2!^C[Y!Q\GT ^FZK;3P5D:VVV^)RY2&K"I1'?VZ1H[]&:#P\6X[=[N
MU=CZHV%D/TTU,H_6XB]02P,$%     @ :8=94 SV[4W/ 0  G 0  !D   !X
M;"]W;W)K<VAE971S+W-H965T,SDN>&UL=53MCML@$'P5Q ,<-DY\561;NEQ5
MM5(K15>U_4WL]8<.C LXOKY] 3NNZ](_@5W/SLP2EFR2ZE6W  :]"=[K'+?&
M#"="=-F"8/I!#M#;+[54@AD;JH;H00&K?)'@A$912@3K>EQD/G=1129'P[L>
M+@KI40BF?IV!RRG',;XG7KJF-2Y!BFQ@#7P%\VVX*!N1E:7J!/2ZDSU24.?X
M*3Z=4X?W@.\=3'JS1ZZ3JY2O+OA4Y3ARAH!#:1P#L\L-GH%S1V1M_%PX\2KI
M"K?[._L'W[OMY<HT/$O^HZM,F^-W&%50LY&;%SE]A*6?(T9+\Y_A!MS"G1.K
M44JN_2\J1VVD6%BL%<'>YK7K_3HM_/>R< %="NBN@,Q"WOE[9EB1*3DA-9_]
MP-Q?')^H/9O2)?U1^&_6O+;96Y$\1AFY.:(%<YXQ=(.)5P2Q[*L$#4F<Z3_E
M-%R>!!TFOCS9.J1)F. 0)#AX@L-?+<:[%D.8_[@\!D6. 8)D)Q+"',(B:5 D
M#1 <=R(A3+H3(9O;(4 U?BXT*N78^YG<9-?1>Z+^=OV!SW/[A:FFZS6Z2F/O
MJ+])M90&K)7HP3;<VJ=B#3C4QFT?[5[- S,'1@[+6T#6!ZGX#5!+ P04
M" !IAUE0 A?0+],!  "<!   &0   'AL+W=O<FMS:&5E=',O<VAE970T,"YX
M;6QU5-N.VR 0_17$!RP.3IPTLBUMMJI:J96BK;I])O;XH@7C HZW?U_ CNMF
MZ8MAAG/.7,R0CE*]Z@; H#?!.YWAQIC^2(@N&A!,/\@>.GM22268L::JB>X5
ML-*3!"<TBA(B6-OA//6^L\I3.1C>=G!62 ]",/7[!%R.&=[@F^.YK1OC'"1/
M>U;#=S _^K.R%EE4RE9 IUO9(055AA\WQU/B\![PTL*H5WOD*KE(^>J,+V6&
M(Y<0<"B,4V!VN<(3<.Z$;!J_9DV\A'3$]?ZF_LG7;FNY, U/DO]L2]-D^(!1
M"14;N'F6XV>8Z]EA-!?_%:[ +=QE8F,4DFO_1<6@C12SBDU%L+=I;3N_CM-)
M<J.%"70FT(5P\ 0R!?*9?V2&Y:F2(U)3[WOF?O'F2&UO"N?TK?!G-GEMO=<\
MWN]3<G5",^8T8>@*LUD0Q*HO(6@HQ(F^H],P/0YF&'MZO,Z0QF&!;5!@ZP6V
M_Y1XN"LQA/D0#K(+!MF]%SA$=T%"F/]T,@D&20("]"Y("'/?+K*Z'0)4[>="
MHT(.G9_)E7<9O4?J;]=?^#2WWYBJVTZCBS3VCOJ;5$EIP*82/=B"&_M4+ :'
MRKCMWN[5-#"3860_OP5D>9#R/U!+ P04    " !IAUE0Y ]1"+@!  #2 P
M&0   'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6QM4V&/G" 0_2N$'W#LHK?=
M;M3D]IJF3=ID<TW;SZR.2@[$ J[7?]\!/6NO?@%FF/?FS3!DH['/K@7PY$6K
MSN6T];X_,>;*%K1P=Z:'#F]J8[7P:-J&N=Z"J")(*\9WNP/30G:TR*+O8HO,
M#%[)#BZ6N$%K87^?09DQIWOZZGB23>N#@Q59+QKX!OY[?[%HL86EDAHZ)TU'
M+-0Y?=B?SFF(CP$_)(QN=2:ADJLQS\'X7.5T%P2!@M('!H';#1Y!J4"$,G[-
MG'1)&8#K\RO[QU@[UG(5#AZ-^BDKW^;T2$D%M1B4?S+C)YCKN:=D+OX+W$!A
M>%"".4JC7%Q).3AO],R"4K1XF7;9Q7V<;@[O9]@V@,\ O@".,0^;$D7E'X07
M16;-2.S4^UZ$)]Z?./:F#,[8BGB'XAUZ;T5R3#-V"T1SS'F*X:N8_1+!D'U)
MP;=2G/E_<+X-3S85)A&>K!7R9)L@W21((T'Z3XGW;TK<BCF\2<)6/=5@FSA-
MCI1FZ.(DK[S+P#[P^"9_PZ=I_RIL(SM'KL;CR\;^U\9X0"F[.QRA%C_88BBH
M?3B^P[.=QFPRO.GG'\26;US\ 5!+ P04    " !IAUE0=R #>N(!   !!0
M&0   'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6QU5-MNG# 0_17D#XA9PRZ;
M%2!E4U6MU$JK5$V?O3!<%!M3VRSIW]<VA%+BO&#/^,PY,X/'Z2CDBVH =/#*
M6:<RU&C=GS!610.<JCO10V=.*B$YU<:4-5:]!%JZ(,XP"<,#YK3M4)XZWT7F
MJ1@T:SNXR$ -G%/YYPQ,C!G:H3?'4ULWVCIPGO:TAA^@?_87:2R\L)0MATZU
MH@LD5!EZV)W.B<4[P',+HUKM UO)58@7:WPM,Q3:A(!!H2T#-<L-'H$Q2V32
M^#USHD72!J[W;^R?7>VFEBM5\"C8K[;438:.*"BAH@/33V+\ G,]>Q3,Q7^#
M&S #MYD8C4(PY;Y!,2@M^,QB4N'T=5K;SJWC=)+$<Y@_@,P!9 DX.AT\";G,
M/U%-\U2*,9!3[WMJ?_'N1$QO"NMTK7!G)GEEO+<\.B8IOEFB&7.>,&2%V2T(
M;-@7">*3.)-WX<0?'GDSC%QXM,Z01'Z"V$L0.X+XOQ*/FQ)]F'N_R-XKLG]/
M<!]N1'R8#SIY\(H</ 1D(^+#?-"NQ"N2> CBC8@/L]^(X-45Y"!K-WPJ*,30
MN<%?>9?Y?B#N"O^#3X_#=RKKME/!56@S".ZZ5D)H,*F$=Z:KC7F/%H-!I>TV
M,7LY3>5D:-'/#PY>7KW\+U!+ P04    " !IAUE0X&[O.QL"  "Z!@  &0
M 'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6R-5=N.VR 0_17+'[ 8G.O*L91L
M5;52*T5;M7TFSB2V%HP+)-[^?0$[KNM,I+X$9GSFG!G(#%FK])LI 6ST+D5M
M-G%I;?-,B"E*D-P\J09J]^6DM.36F?I,3*.!'T.0%(0ER8)(7M5QG@7?7N>9
MNEA1U;#7D;E(R?7O'0C5;F(:WQROU;FTWD'RK.%G^ ;V>[/7SB(#R[&24)M*
MU9&&TR;>TN<=93X@('Y4T)K1/O*E')1Z\\;GXR9.?$8@H+">@KOE"B\@A&=R
M>?SJ2>-!TP>.]S?VCZ%X5\R!&WA1XF=UM.4F7L71$4[\(NRK:C]!7] \COKJ
MO\ 5A(/[3)Q&H80)OU%Q,5;)GL6E(OE[MU9U6-N>_Q:&![ ^@$T"2"<4,O_
M+<\SK=I(=X??<'_'])FYLRF\,QQ%^.:2-\Y[S=/U(B-73]1C=AV&C3!T0!#'
M/D@P3&+'[L(9'IZB&:8A/!UGR%*<8(82S +![)\2EY,2,<P*%YFC(G.$8#T1
MN<?,D@076: B"X2 3D0PS(/S7J(B2X0@G8A@F!DNLD)%5@C!?"*"81:XR!H5
M62,$TXO', \NGB9X!R4(Q?H!Q8,FI/__'Z=HDVTIN\^")M-&QD#37B:CT2%!
MG\/0-%&A+G68V"/O,)BW82Z3O_!NJG_E^ES5)CHHZP98&#,GI2RX7)(GUPVE
M>T@&0\#)^NW2[74W33O#JJ9_*<CP7.5_ %!+ P04    " !IAUE0LFRYP\X!
M  "<!   &0   'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6QM5&V/G" 0_BN$
M'W"LZ'J7C9K<7M.T29MLKFG[F=7Q)0=B =?KOR^@:ZWER\*,S\L,RY!-4KWI
M%L"@=\%[G>/6F.%$B"Y;$$P_R %Z^Z662C!C0]40/2A@E2<)3NCAD!+!NAX7
MF<]=5)')T?"NAXM">A2"J=]GX'+*<83OB=>N:8U+D"(;6 /?P'P?+LI&9%6I
M.@&][F2/%-0Y?HY.Y]3A/>!'!Y/>[)'KY"KEFPL^5SD^N(* 0VF< K/+#5Z
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
MB'LIC;"UY#?V33K:'P'30R/VQMU6]EX-D_#P8&0_3OG9]%-C_0=02P,$%
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
M7Q".A(Q'8!!+EZ.15$PR/.,<SSAW,BX(B&C"W52JB()X'EU*"B$!-45L427
MS']U*<[C",SH#/<(*NP)HZ0$8WQV*<%"Z''N4C9_'"YFEPJ%/35)D&@$8W$H
M +9T,2ID3&(\S0)/LW 7-@>IF;2,O'0TH'!9HQ!(W]2%R$#!'&,03,L,<P="
M>D)# IE[QKS%P-(<@SB %B[$!_"[\.)";"#@"G:A<"#^LGPC/*\1LGPE;D'B
M%N3M+7\AL:TK4@)^HQ".1%(R6-(N1^W*9>(O-1WCD<>WMZY%[$;$8P:_0B\(
MQ@B3X)BT=#$JJ+S8F:_"5GC8ZO927"BD?!3</S"(@[I?NE XX##@X.(PF>EB
MVUR;2F]ECGE5GQ4N>ON;V9>P/HR"_@E]F%.D?V%O<NW%Z\-\>PW\)RFV^[ST
MWDQE#\'-.75C3*5M[&1@9WIG;YY](]6;JGZ5]KUH[U]MHS*'[FH9]/?;\?]0
M2P,$%     @ :8=94!4;278Z @   0@  !D   !X;"]W;W)K<VAE971S+W-H
M965T-3(N>&ULC57;CILP$/T5Q >LL8%<5B12DZAJI5:*MNKVV4DF :W!U';"
M]N]K&X(2=M#F!6QS+C.#Q\X:J=YT#F""]U)4>A'FQM3/A.A]#B773[*&RGXY
M2E5R8Z?J1'2M@!\\J12$1=&$E+RHPF7FU[9JF<FS$44%6Q7H<UER]6\%0C:+
MD(;7A9?BE!NW0)99S4_P"\SO>JOLC/0JAZ*$2A>R"A0<%^$7^KRAB2-XQ&L!
MC;X9!RZ5G91O;O+]L @C%Q$(V!LGP>WK FL0PBG9./YVHF'OZ8BWXZOZ5Y^\
M36;'-:RE^%,<3+X(9V%P@",_"_,BFV_0)92&09?]#[B L' 7B?782Z'],]B?
MM9%EIV)#*?E[^RXJ_VXZ_2L-)[".P'I"6YQ10MP1XD<)24=(!@32IN)KL^&&
M+S,EFT"UO[?F;A?1Y\16?^\6?;']-UL>;5<ORS2:9>3BA#K,JL6P.\S\'K-&
M,#2ZQVPP#.TQQ,;9!\O08)D72.X$&"X0HP(Q(A /HL0P"6Z2H"8)(I#B BDJ
MD'X>Y0K#3'"3"6HR>;R64U1@B@A,![7$,#/<9(::S!"!P=;;M)C48RJ/B1.6
MQKC-'+69?[1A@]V[QC CNY=&>*]%C^\,.M*N]/.JKS 0&_FW%.\TBK7:?.C#
M/E:>3L82PCN2(NW&AIL=!8W5'F]*BG0E2X8^&&CH0VZ.5G<Y_N3J5%0ZV$EC
M3VE_EAZE-& %HR=;F]S>Q_U$P-&XX=2.57LIM1,CZ^[")?VMO_P/4$L#!!0
M   ( &F'65"9 6^A\0(  !X+   9    >&PO=V]R:W-H965T<R]S:&5E=#4S
M+GAM;(U6VXZ;,!#]%<1[%VR#@2B)E*M:J9566[5]=A(G00N8@I-L_[XV$ KV
M9+LO@(<S9\[8'GNF-U&]UF?.I?.69T4]<\]2EA//J_=GGK/Z292\4'^.HLJ9
M5,/JY-5EQ=FA<<HS#_L^]7*6%NY\VMB>J_E47&26%ORY<NI+GK/JSY)GXC9S
MD7LWO*2GL]0&;SXMV8E_Y_)'^5RID=>S'-*<%W4J"J?BQYF[0),M(MJA0?Q,
M^:T>?#LZE9T0KWKPY3!S?:V(9WPO-053KRM?\2S33$K'[X[4[6-JQ^'WG7W;
M)*^2V;&:KT3V*SW(\\R-7>? C^R2R1=Q^\R[A$+7Z;+_RJ\\4W"M1,78BZQN
MGL[^4DN1=RQ*2L[>VG=:-.];QW]W@QUPYX _ZD Z!]([!._B@PX?]'CTOD/8
M.80?=:"= QTK\MJI:N9^S22;3RMQ<ZIV^Y1,[U(TH6IU]]K8+&;S3TU_K:S7
M>8C#J7?51!UFV6+P (-ZA*?8^Q 8"K'$ECL>!UC;"$K&D(T-07X"JR!@HJ0A
M"(8$-#82;3%A@RE:# X-)6L;] E%2>0;@FU8\DAP  H.+,$AIC!!"!*$ $%D
M9-QBZ$ E1;X?&"G;J( D.#$RME&$(!+#DBDHF0*2S46B=AA$C2V[LHD0-K.R
MB<PUM!$H# S0%@KU8)TB,.G()B#(2#JRE$1&RFL;@C$R<M[8($3)@VJ.0;4Q
ML$3&3EC&5A15(M2<?P!%AD7=*K91\3#@2'$"*DX^4/D)H-@N?1L%53[ ];#T
MD0^?RKX]R\0WCV7?.F(HPF:)KT&85>,; #8N\K%N\S89_P4O@@7"_Z_*)0 *
M'^U0!!_U"#CK!R79Q;%!(<%&'&]PC>:\.C4M4.WLQ:60NIP'UK[-6F!]#1OV
MI6Z_(#N>K"#\!D^VD'V!-!'(A)0+@F.3>^_G_4NB[1R_L>J4%K6S$U)U&$TC
M<!1"<C5#_I/:"V?5K/:#C!^E_HS4=]5V;.U BK+K1KV^)9[_!5!+ P04
M" !IAUE0B-S+M\H"  "L"@  &0   'AL+W=O<FMS:&5E=',O<VAE970U-"YX
M;6R-5MN.VC 0_94H[]W$CG,! 1(!5:W42JNMVCX;,!!M$J>V@>W?UW9"&IS)
M:E^(;<X<G[%GQK.X<?$JSXPI[ZTJ:[GTSTHU\R"0^S.KJ'SB#:OU/T<N*JKT
M5)P"V0A&#]:H*@,<ADE0T:+V5PN[]BQ6"WY195&S9^')2U51\3=G);\M?>3?
M%UZ*TUF9A6"U:.B)_6#J9_,L]"SH60Y%Q6I9\-H3[+CTUVB^19DQL(A?!;O)
MP=@SKNPX?S63KX>E'QI%K&1[92BH_ES9AI6E8=(Z_G2D?K^G,1R.[^R?K?/:
MF1V5;,/+W\5!G9=^YGL'=J274KWPVQ?6.13[7N?]-W9EI88;)7J//2^E_?7V
M%ZEXU;%H*15]:[]%;;^WCO]N!AO@S@#W!AB]:Q!U!M%'#4AG0!R#H'7%GLV6
M*KI:"'[S1'N]#351A.9$G_[>+-K#MO_IXY%Z];J*HV@17 U1A\E;#!Y@4(\(
M-'N_!8:VR/'(G.#D<8L-A$D?,5L(D\%"(M#7R!*0!U^)XVN+B2VFMIA/*(RS
MS-$[AF48A[ 8 HHA@)@8)HA!@A@@<(XU;S')0&;H./(>XD%$ HI( !$I3)""
M!"E X!QVG@)WDCH7MP% F0O:CD%1.B$W ^5F@-P93# #"69C N+<20YA)C(.
MA7!6AP %GJ"8* SH _'5@8;A0YSJL8$P$S&&P *R1ACP)IJ@@%,?0;GOQAF"
MDA_-8M<A );$CMM; )7,)F(-P24" 36"D D*N$@@H$J,X@T$3=0B!-<!!!0"
MDDQ0P)4  :6 N&] !QH&TU3917 &(R"%R2@2,B 2HBP>A<(8AV?8K3H *DJ1
MFX[!X,FNF#C9=DAZ>WZIE7GV!JM]R[7&YLEWUG/3BME6X#]-V\=]I^)4U-+;
M<:4;"OOL'SE73(L,G[2\LVX=^TG)CLH,4ST6;?_43A1ONMXPZ!O4U3]02P,$
M%     @ :8=94-M8]WSK 0  9P4  !D   !X;"]W;W)K<VAE971S+W-H965T
M-34N>&ULC51=;YLP%/TKR.^M^::+"%*;:MJD38HZ=7MVX!)0;<QL)W3_?K8A
MB($U]07[7LXYG&-LYP,7;[(!4-X[HYW<HT:I?H>Q+!M@1-[S'CK]IN:"$:5+
M<<:R%T J2V(4A[Z?8D;:#A6Y[1U%D?.+HFT'1^')"V-$_'D"RH<]"M"M\=*>
M&V4:N,A[<H8?H%[[H] 5GE6JED$G6]YY NH]>@QVA\S@+>!G"X-<S#V3Y,3Y
MFRF^5GOD&T- H51&@>CA"@>@U AI&[\G331_TA"7\YOZ9YM=9SD1"0=.?[65
M:O;H 7D5U.1"U0L?OL"4)T'>%/X;7(%JN'&BOU%R*NW3*R]2<3:I:"N,O(]C
MV]EQF/1O-#<AG CA3 CB_Q*BB1"M"'AT9J,^$T6*7/#!$^//ZHG9$\$NTHM9
MFJ9=._M.IY6Z>RV2^%..KT9HPCR-F'"!"?]%'+:(-)HA6!N8781.%Z'EQTL7
M4>(6B)P"T58@\5<Q1DQB,=UH<A5CB[@+4M_M(W;ZB+<^XM MD#@%D@\$&3'I
MPF84K))L(7=!D+F-I$XCJ2-)ZA;(G +9!Y)DC@7WXS!9I=G"'B)_G08OMKRY
M@KX3<6X[Z9VXTJ?'[O&:<P5:T+_76HV^]>:"0JW,---S,9[]L5"\GZXU/-^M
MQ5]02P,$%     @ :8=94!87TIE+ @  %P<  !D   !X;"]W;W)K<VAE971S
M+W-H965T-38N>&ULC55=CYLP$/PKB/<[P'Q'!.F2TZF56BFZJNVS0S8!G<'4
M=L+UW]<VA'#@5/<2[&5V9G9CUEE'V1LO 83U7I.&K^U2B';E.+PHH<;\D;;0
MR#='RFHLY):='-XRP >=5!,'N6[DU+AJ[#S3L1W+,WH6I&I@QRQ^KFO,_FZ
MT&YM>_8U\%J=2J$"3IZU^ 0_0/QL=TSNG)'E4-70\(HV%H/CVG[R5EO/50D:
M\:N"CD_6EBIE3^F;VGP]K&U7.0("A5 46#XNL 5"%)/T\6<@M4=-E3A=7]E?
M=/&RF#WFL*7D=W40Y=I.;.L 1WPFXI5V7V H*+2MH?IO< $BX<J)U"@HX?K7
M*LY<T'I@D59J_-X_JT8_NX'_FF9.0$,"&A.\Z+\)_I#@WQ("77SO3)?ZC 7.
M,T8[B_7_5HO5H?!6OFQFH8*Z=_J=K);+Z"4/0R]S+HIHP&QZ#)I@;@A'LH\2
MR"2Q08MT]%%@NT1$OEG!-Q;AZ_S@0Q'(3! 8"0(#@3_K0H\)-:;INY"F\TJ6
MH ?DW>E6:+02&JP$,RL])IJJA%XRL[($A:'92&0T$AF,A#.-:*&1N'<:'QM%
M8H-(-!.)E]4B-S6K)$:5Q* 2FPE2(T'ZB?.1+FUZ2>S/3\@2YJ?AG1,BYZ/Q
MFW4_<48&T/0H!DD<S]P84 ^>B^;-<2;CI 9VTI.76P4]-T)]N)/H.-V?D!I'
ML_A&37T]IFXT_97Q';-3U7!K3X4<=GHD'2D5(%VZC])?*6^I<4/@*-0REFO6
MC^I^(V@[7$/.>!?F_P!02P,$%     @ :8=94)V[)>BN!   PA<  !D   !X
M;"]W;W)K<VAE971S+W-H965T-3<N>&ULC5C;CN(X$/T5E/>>Q';L) B0&FBT
M*^U*K5GMSG,:S$63"Y.DF]F_7R>D6>(Z9O("B7U<=<HNGW(\NY35]_JH=3/Y
MF6=%/?>.37.>^GZ]/>H\K;^49UV8GGU9Y6EC7JN#7Y\KG>ZZ07GF\R!0?IZ>
M"F\QZ]I>J\6L?&^R4Z%?JTG]GN=I]>]29^5E[C'OL^'KZ7!LV@9_,3NG!_V7
M;OX^OU;FS;]9V9UR7=2GLIA4>C_WGMET(U0[H$/\<]*7^NYYTH;R5I;?VY??
M=W,O:!GI3&^;UD1J_C[T2F=9:\GP^-$;]6X^VX'WSY_6-UWP)IBWM-:K,OMV
MVC7'N1=[DYW>I^]9\[6\_*;[@*0WZ:/_0W_HS,!;)L;'MLSJ[G>R?:^;,N^M
M&"IY^O/Z?RJZ_TMO_W,8'L#[ 7SL -$/$+<!X4-\V./#&YX]'B#[ 7*D ]7C
ME>7 OTY5-_?KM$D7LZJ\3*IK^IS3-DO95)G5W;:-W6)V?6;Z:]/ZL9 RGOD?
MK:$>L[QB^!V&W1"^L7YSP9&+)2?#^=#!FB*4&$(V%,*"!+,0,%#1&0@'@296
MH%>,[#!%AXD4XXI9="E,RE#PP*),82*)6.1@'4+6(66M+#_+*T;=^7EB+ @M
MT@!E(I,69XIB<:(DIBPA93EBHB5U$P@>2WNF*0XMR(;"K 49T%:0M@(S[4CS
M"!J(1L0=@:6*8V'O!P0SLZ,PG1C2B4$\EI]E3/QPSJST6E/0DTPB!Y<$<DD
M%VN#+Q/BQB;R"#$@P0(L=<&(S=2#?C$G /5@4IA#>MF(C.E!PUQ0BMLI W$T
MM380Y\XM!B7]F7% G3M,8#UF8P2Y!PW9!C*T=0+CDBAV4,)BRY#:VGN& 8D,
M(TMM5\ 4X[8D U-/[&XE.M0+-.5:+BS)#&@RV8",JF@2J,@.C)IB<60'!@0Y
M$79<B%3HB MK-D.B37:T L4&I!"%A2)RT,$5@(TI 8R*.U$7I/^4\@;CW%F/
M"P4#E4*Z L?ZSH# T\"I?DNR6FN XDHXTIUCH>=(Z.U]S(&$,Q%+ZT2T@L8L
MT!H8XXF]WU^@*5=HN&9P4#/(3N94X^UI?@@9$L$5@(,*0+9>#_K5'*\!;C!]
M0T*XGO Q]82#.A'SA/"A,)JJ&X!ZD*JXY' @[M(5.!9W/N; S:DB/W$1,V%'
MCG",);$=.\"% ;M+Q2%UK-\<Z3?9J%28C<JQR!9PA#/?  XQY%C".9!PNK^H
M[M)*N0:H^R(X9(.EF:-#/-EDX( .OO\0;/ !."2$A9Z/$?H>) >>PH21"4(X
MFI,;B!ODY/#SWRX*PUZLJX+J*CFO+0%(*D>E%%@V!97-^\-<[P=IJRM:QVT'
M54-R3%L"D%2N2Q6L7P(=F<F\ 5#D*#<"BYQ AT5I^P&@R/$-+[ B":1(9'T
M*+*_?OR[&[A<5X?N]K2>;,OWHND^">^:;U>TS[R]PK/:EVRZ8:B=3U<(O^;3
M%]3^+(+I1@3(DFAOAZ$/P4T/9"6$Z1&P)S0](>R1ID?"'O5Y/^W_/UO7V^T_
MT^IP*NK)6]DT9=Y=5N[+LM%F*8(O9LF/.MW=7C*];]K'R#Q7UUOEZTM3GOL;
M<_]V;;_X#U!+ P04    " !IAUE0*(4:V2P#  !P#   &0   'AL+W=O<FMS
M:&5E=',O<VAE970U."YX;6R-5VUOFS 0_BN([RO8@ U1$JFA33=IDZI.VS[3
MQ$E0 6?@--V_GPT.!?M(^R7XY;E[GK//I\O\S.N7YL"8<-[*HFH6[D&(X\SS
MFLV!E5ESPX^LDCL[7I>9D--Z[S7'FF7;UJ@L/.S[Q"NSO'*7\W;ML5[.^4D4
M><4>:Z<YE656_UNQ@I\7+G(O"T_Y_B#4@K><'[,]^\G$K^-C+6=>[V6;EZQJ
M<EXY-=LMW%LT>T"Q,F@1OW-V;@9C1X7RS/F+FGS;+EQ?*6(%VPCE(I.?5Y:R
MHE">I(Z_VJG;<RK#X?CB?=T&+X-YSAJ6\N)/OA6'A1N[SI;MLE,AGOCY*],!
M1:ZCH__.7EDAX4J)Y-CPHFE_G<VI$;S47J24,GOKOGG5?L_:_\4,-L#: '_6
M(- &06^ R%6#4!N$O4%X%1]I?/1.<-V : /R20*J\=0@\+JS;2_K+A/9<E[S
MLU-W^7;,5%JC&97IL%&+[>VW>_*^&KGZNHQH,/=>E2.-23L,'F!0C_"D]YX"
M0Q0IMLSQF.#>1A!#PX,-07X"JPC 0(/603AT@*,QR0K"A,9A=)BHQ507(=@W
M(K)1!N+A&F(43@B&$UI2(VI*[3!D0!&@A/C4T K!D$^)(=B&83\@R<0E1*#J
M"%!M7$(:63R$X@%-)QI )7%D:HZL0PY#%&)8,@$E$UMR-.& @@XH$+.A\YY:
MT7R)_0F6&&2);1;S#:6QS9+XQ$B'.]L3PJ;>V#K7+U%BT*T!1S&%8TK F!+@
MY"8<(!^N;O['KS[5(#+YI,=,$W44?7S-J08-F>(PF. !B^DMPI]X^!HTB@A1
M,L4$%TQD5T/[L6K0**<P2<@$$US+$%#,K.35H&'.C9)W3&26G_$N_-*1_=2M
M\K^"0.&4"K@@(+LB6"]L!8 B,E%K$5P2T/4'J'F PD'-U/<&W43)ZGW;.C;.
MAI\JH0K28+5O3U=8=2/&>JK:5F@=S^X@_#V>K:'U6Q3-UO*2[1UY07*'@#M4
M[E!P)Y8[;3?MO8?7]>(_LGJ?5XWSS(7LP=I.:<>Y8/+L_!N990?9_O>3@NV$
M&E(YKKL>N)L(?M3]O=?_R5C^!U!+ P04    " !IAUE0D(@)>Q0"   (!@
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
MT=X''F4(LTXL9X0I4@Y[5D#/"N 9F\"99'3!TULA;0G<_06 M!'?2U(CJSU
MCP+PB,W<3#+.\P@,:'8#\1B4&".6'Q$7_FB%U44!CYBU,P YSW+N?( NET+.
MU]X"8:8H>/C!WE*<CC@W(IT:..>X<Q)RGJ^M ;K\8"[G,HFP(&0'410TC?@&
M-?M.$U@X7"X'Z'RD(@_<: E]*1P/-$3E?F2;H;'":R#Q.5\: W0^D-$A*0\W
M&W$Z"10W7'*DC \C>Q.-95Y+G?=*1(F4YB3,*9K$E ,P:;C1EAL/0$4N^+&%
M@.5>2[T7$SK74J*]"DK8+C&D]P#[0.\U%GR-%%\$N=3@!'&A60#,YD)IEP!+
M*C(:Z%C2M=1K5XP%'-9.+851;H>UE#-+A1=[-,"EG&N#X\Y+CHJT<Q[3%"R2
M&JFD6"M2N4B3(:>Y[1+4A2^<$VL%@#YMD]3(SIBP(A)21+Y62,J3]>?R-!R;
M)&:<*WB*0E@>_(@@$!8[0F+' X:D])BTA^;Q@K 4!US( )8VOVYDC1,6,I)"
MYL+(!IJPKM!GCHX$=""=P0KN.I"5M&G(N>L L\780B$L*O0942$I 2Z=9K4P
M'' N3QF.6RXYFS;*HU\-*PI]1E%(:H!..9=O"1&F"Q+1AGI39^> 2[NQHM!G
M%&6 SB\&R.8\6RX %HP+W&Q)6:7& ISKR64ME@H"9RB^[YX!R(_=SQ#.ZR3S
MNCB%S@!$>B0#&YR!C<S XDPX0Y =B06#,Z9!.W\^;P!*,3PR#LYP!F0X?GR:
M <CKD71B1B[00!KD)YD9@+SFNYOL[')R&^N7_J:XF3Q6K[NV.QJ?E9YNHV?4
M76ZR\KF^6FI0?D?YU2(%NZQ)@9IJ"E@34DU -49=+8R"-3K5( O2A*<:9'.:
MHE337ZUG/YT_7LS_4=8OZUTS>:C:MMKVU[+/5=7&-+/J:UKBJU@^G5XV\;GM
M'O/T7!\OQ(\O;;4?+ONSTW\<;O\'4$L#!!0    ( &F'65"(8R(!XP,   P1
M   9    >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;(V8VW+B.!"&7X7R XS5
M.EE* 54AF<P$V*K43.W.M0/B4.,#:YLP^_8K'R @M1/?8%M\?ZO;W6Y9'I_R
MXG>Y,Z8:_4F3K)P$NZHZW(5AN=J9-"Z_Y >3V7\V>9'&E;TLMF%Y*$R\;D1I
M$E)"9)C&^RR8CINQEV(ZSH]5LL_,2S$JCVD:%__-3)*?)@$$YX$?^^VNJ@?"
MZ?@0;\U/4_U]>"GL57BQLMZG)BOW>38JS&82W,/=$G0M:(A_]N947IV/ZE!>
M\_QW??&\G@2D]L@D9E75)F)[>#,/)DEJ2]:/?SNCP67.6GA]?K;^U 1O@WF-
M2_.0)[_VZVHW"50P6IM-?$RJ'_GIN^D"$L&HBWYIWDQB\=H3.\<J3\KF=[0Z
MEE6>=E:L*VG\ISWNL^9XZNR?9;B =@)Z$=BY/Q*P3L#>!?Q# >\$?*A = (Q
M5" [@1PJB#I!-%2@.H$:*M"=0 \5 #EGCKQ+Y,>22[)A\"SG= -U)&%;6$VE
M/L95/!T7^6E4M _;(:Z?:;BS*FN\'FUJO_G35FMI1]^F$N@X?*LM=<RL9>@5
M(PBY9>8^ Q<BM"Y<_*"H'S/JZ1TO'GR"*[AE'GU&$(?YBC'.7$\^(]DM\@TS
MXS#?,8;?,L\8(YR;^^G-67SN\-)'@&@\1PRO%=98X-<6P*F#6<N(ALG:<#31
MS$VFCTD"P)S 'Q%K'#1()Z4^QB/"A','GA!KDG$W(]\PC#*EG.0BD^I(N"7Y
MC&"$$.U@<Q^CE'#&G% 7"$<HX]()8NES("/-(H9GG.,9YU[&)3AW==XR\CI
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
M/S,F027I/:G\"G5CC),*SE(/8S7F?=_L)Y*UPY6 QGLI^P=02P,$%     @
M:8=94.M$A[G7 P  CQ$  !D   !X;"]W;W)K<VAE971S+W-H965T-C<N>&UL
MC9A=CZ,V%(;_"N)^%_M@&S)*(DT^JE9JI=%6;:^9Q$G0\I$"F6S_?0UXLN!S
M$G(3P'G/\6L?\X"97\OJ>WW2NO%^Y%E1+_Q3TYQ?@J#>G72>U%_+LR[,/X>R
MRI/&7%;'H#Y7.MEW07D6 &,JR).T\)?SKNVM6L[+2Y.EA7ZKO/J2YTGUWTIG
MY77A<_^SX5MZ/#5M0["<GY.C_E,W?YW?*G,5W++LTUP7=5H67J4/"_^5OVQ!
MM@&=XN]47^O!N=<.Y;TLO[<7O^T7/FL=Z4SOFC9%8@X?>JVSK,UD?/QKD_JW
M/MO X?EG]E^ZP9O!O">U7I?9/^F^.2W\V/?V^I!<LN9;>?U5VP%)W[.C_UU_
MZ,S(6R>FCUV9U=VOM[O439G;+,9*GOSHCVG1':\V_V<8'0 V &X!7#T,"&U
M^#- / P0-D \&R!M@'0"@G[LW61NDB99SJORZE7]>C@G[;+C+]*4:]<V=M7I
M_C/S69O6CZ42X3SX:!-9S:K7P$##;XK 9+]U 507*T#A,.Y@C17*\;"93+)]
MF&1D,R1G(NSBQ2!>RIDS$[U&=IJBTT1**"F=\1 RX!+NV!&D'8'L*"$<.[U&
M#?H1+ Z5XX90J2B.:3.2-"/QW( [-Q)U\P58Y'@A1*&2BO:B2"_JB3HIU$W,
M),3._*VQS"GGR$Y$VHF(.CGK81.A]<!#'K)!#?HE3.@@ C$8WLA03!J*"4/.
MDMC$N R213%S)F@[K1L9FI&&9LA0Y$S0:C95B+Y>A&Q\7_6CPS*J^MO)3D=C
MXXSF)\/+,;Y3+WX'P?R)%6U%0[<*N)#<F:)IW=@2B>Q7#D_0QXJ&7851)&/7
M$9:Q.V9H,'."S(@^5D3W8HT\DHR-T$CFF,E$H3!NE9P!F[EN"-VC0M%@YIC,
M&#\<4Y=S!8*YCU!2"&)8^K$IFM <(QHCB&/X&K:$?!:ZIJ:%8U,TISD&-<*0
MU4S7CM 1-^/FR7S;Z7SC$=+@YYC\\NXDT:CFF-7$"L?@Y"($]^&QIG2,L0AH
M2T #%C!@,8JL:(0B\YQR7S.QZL&;$-"T!H+6B$: *4R\#%&J^V]#0*,:,*IQ
MR0 SF O%W!M@3>I&I1U;HH$-&-@82H!IS"53L<.)+:434<SO/*:!1C=0K],N
MD@ C^8M0G+N.IF1C0S2X 8,;X<AJY&35*!V^(3=/YMM.Y^M'& PVF;FNCMV.
MO_9VY:5HVIW8H/7V5>$5VDVJT[[B+^O^V\#/-/VGBC^2ZI@6M?=>-F8+W&U4
M#V79:&.3?34&3SK9WRXR?6C:T\B<5_TG@OZB*<_V\T=P^P:S_!]02P,$%
M  @ :8=94+32W"9#!   J10  !D   !X;"]W;W)K<VAE971S+W-H965T-C@N
M>&ULC9A;C^HV%(7_"N)]3K*W$R<9 =) 5;52*XU.U?8Y ^:BDQ":A.'TW]>Y
M# >\ESOP (E9MI?M[<^7V:6JOS5[8]K)][(X-O/IOFU/ST'0K/>FS)LOU<D<
M[3_;JB[SUK[6NZ YU2;?])G*(N PU$&9'X[3Q:Q/>ZT7L^K<%H>C>:TGS;DL
M\_K?I2FJRWQ*TX^$KX?=ONT2@L7LE._,'Z;]\_1:V[?@6LKF4)IC<ZB.D]IL
MY],7>EZII,O0*_XZF$MS\SSIFO)65=^ZEU\W\VG8.3*%6;==$;G]>3<K4Q1=
M2=;'/V.ATVN=7<;;YX_2?^X;;QOSEC=F515_'S;M?CY-IY.-V>;GHOU:77XQ
M8X/BZ61L_6_FW116WCFQ=:RKHNF_)^MSTU;E6(JU4N;?A]_#L?^]C.5_9,,9
M>,S UPRD_S>#&C.H'QFBOO&#L[ZI/^5MOIC5U652#Z-URKN@H&=E.W/=)?9]
MU_]G6]O8U/>%CI)9\-X5-&J6@X9O-'15!+;T:Q6,JEBRR,[W%:RD0BM<@X*-
M4'W^Z*X1J=.(01/WFN.@B95.72M2%B<JR6)L)X)V(F G<^P,&GU3SU.41JP=
MW0KIXEBSQH9B:"B6AN+0,12+BDAG$2G'#Y!12C>V[^QH:$<#.^38T;(>3A4[
MLM6GLCL[";23 #M.6"P344^26E:ZO0-D(1-Y!BN%=E)@QZEGF8HHY2Q)5.38
M284=CFPHAMA.!NUDP$Z$"Z 0(R8$1<0N8Y#(TV_D01D]@(%1=#?!M1;3;I3I
M.YE*4H\A"+X7X@= ,(KN9KC26DP\J./(%UN$24D E0(%)"%H8_UF-$9'2H:7
MRC1[#&%6$H!EG'B*P'0CA#<17TCD&TZ,+0+<DO&E1=\IG67*76=(DLNN1BKR
MK'N$T46 73+"))6>%$4J#5U/2!@F%'GH3AA@A @F8DPB++8?T4T289HH\P$(
M(XP0PSQM8LPP?H1A2*0]L&7,,'Z$82P91HK"U)V@+"'6Z93/$J88/T(Q!G0B
M"N/879*@,*30VT^88_P(QQAQ+!93D0''LBSQ&<(<8\ Q[=LF8X[Q(QR#(L\:
MP)AC_ C'6'(LY52&&-B *>]VD#'%^!&*,8 3)6DB1A/I[+![6,^88?P(PQC
M*0Y)A+R4D?UX_&"$,4"8;Z55&&$*T$F>DD+I-8S<4?],=6\'DTXATKF#KB3!
MGI"?SV3WAC#G%."<&/)1=#LMW%542<)Y4*(\IUG -N]Y&--(H5V5BQ(DTIZ5
M56%D*4 C&5.Q7*XXU.X&5\FCI4K90Q*%T:80VD10268]V<V0.VV1C-+,LS=5
M&&T*'2Y%4"6 M;%[) $JNMU7#G:"FXN?TM2[_HZLF:RK\[&_H+M)O=[#O7!_
M<?1#/ESB_9[7N\.QF;Q5;5N5_271MJI:8\V$7ZR-O<DWUY?";-ON,;'/]7!Y
M-KRTU6F\& RNMY.+_P!02P,$%     @ :8=94$1UV)U0 @  4 <  !D   !X
M;"]W;W)K<VAE971S+W-H965T-CDN>&ULC57O;ILP$'\5Q /40&Q((H+4))TV
M:9.B3MT^.\0)J 8SVPG=V\\VA"9PK?8%[./WY\[&Y[05\E45C&GOK>*U6OF%
MULT2(947K*+J032L-E^.0E94FZD\(=5(1@^.5'$4!4&,*EK6?I:ZV$YFJ3AK
M7M9L)SUUKBHJ_ZX9%^W*#_UKX+D\%=H&4)8V],1^,OW2[*29H4'E4%:L5J6H
M/<F.*_\Q7#Z%@24XQ*^2M>IF[-E2]D*\VLFWP\H/;$:,LUQ;"6I>%[9AG%LE
MD\>?7M0?/"WQ=GQ5_^**-\7LJ6(;P7^7!UVL_+GO'=B1GKE^%NU7UA=$?*^O
M_CN[,&[@-A/CD0NNW-/+STJ+JE<QJ53TK7N7M7NWW9?D2H,)44^(!D(8?TJ8
M]839.P%_2L ] ?\O@?0$,B*@KG:WF%NJ:99*T7JR^Q\::G^[<$G,=N4VZ';'
M?3/KJ4STDL4Q2='%"O68=8>);C#A@$!&?;"(((MU-*%']P:;*2*>W4.V4T@8
M+.XQ3X!,',.9SL#%F#D!?">0C'+M,,1AZCZ19#9*90NAYIC R6 P&0PD,X<%
M""A  ('QDI%)GC@*(@S;Q*!-/+5)@I%-AXGO;<@'>Y. -@E@$XYLDDDU 6PQ
M!RWF@$4$"RQ @04@,/J1UU,,)A]LJVG X)$- !L\/K-3$(['JX%NND3%Y,FU
M;.7EXEQK>Y!NHL.U\!C9+C.*K\/EMFON[S+=7?.#RE-9*V\OM.EAKM,<A=#,
MY!@\F)TJS/4V3#@[:CM,S%AV/;Z;:-'T]Q<:+M'L'U!+ P04    " !IAUE0
MNOR)Q^D!  #'!   &0   'AL+W=O<FMS:&5E=',O<VAE970W,"YX;6QU5&UO
MFS 0_BL6/Z!.''#:")":3M,F;5+4:=UG!XZ :F-F.Z'[]_,+92QQOV#?^;E[
MGCM\SD>I7G4+8-";X+TNDM:888>QKEH03-_) 7I[TD@EF+&F.F$]*&"U#Q(<
MD]6*8L&Z/BES[SNH,I=GP[L>#@KILQ!,_=D#EV.1K)-WQW-W:HUSX#(?V E^
M@/DY')2U\)RE[@3TNI,]4M 4R>-ZMZ<.[P$O'8QZL4>NDJ.4K\[X6A?)R@D"
M#I5Q&9A=+O $G+M$5L;O*6<R4[K Y?X]^V=?NZWER#0\2?ZKJTU;)/<)JJ%A
M9VZ>Y?@%IGJR!$W%?X,+< MW2BQ');GV7U2=M9%BRF*E"/86UJ[WZQA.,CJ%
MQ0/(%$#F !)J"41>^2=F6)DK.2(5>C\P]XO7.V)[4SFG;X4_L^*U]5Y*NLUR
M?'&))LP^8,@"LYX1V&:?*4B,8D]NPE-"XPDV48T;GR#]3R.]TA@PF<?T'O-
MTVV<)8VRI!&6[15+P- %"\DV'S0CB[)D$9;[*Y;LEH60#VJA418:87FX8J$W
M'5NGZ2J[HL&+BR1 G?P(:53)<^_'=^&=I_21^(OX#QY&_#M3IZ[7Z"B-O<[^
MTC52&K!B5G=61VM?E=G@T!BWW=J]"K,5#".'Z=G \]M5_@502P,$%     @
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
M0#TEHGY%!1,0(.$R (@.4%=MP!<"2"D+O'& 2P$@6D!=Q0%?#-*,,1$@X7(
MF!ZXJ@.^(*2I"'VK@$L"()K 7.4!7Q3NP!Y4%D#AN@"(,/@H7QGNQ/5YWI)P
M;0!$')@K=("H0U9P[R[,O8N*$@B^H[B,@*\CO A=J;A$4%\BN'!W;S:ZO54)
M<<4HN6HGAO[NF^SV9=-'+]K8SF3L'W9:&V5#DGL;[&!;RLND4CLS#(4==U-?
M-4V,;N>>,;DTKJN_4$L#!!0    ( &F'65#+KL\9+ (  '$&   9    >&PO
M=V]R:W-H965T<R]S:&5E=#<U+GAM;(U5[6Z;,!1]%<0#U'Q#(H+4))HV:9.B
M3NM^.^0FH-J8V4[HWGZV(92"6^U/;%_..?=<?]SD'>,OH@*0SBLEC=BXE93M
M&B%15D"Q>& M-.K+F7&*I5KR"Q(M!WPR)$I0X'D)HKANW"(WL0,O<G:5I&[@
MP!UQI13SOUL@K-NXOGL//-672NH *O(67^ GR%_M@:L5&E5.-85&U*QQ.)PW
M[J._WF<:;P#/-71B,G=T)4?&7O3BVVGC>MH0$"BE5L!JN,$."-%"RL:?0=,=
M4VKB='Y7_V)J5[4<L8 =([_KDZPV;N8Z)SCC*Y%/K/L*0SVQZPS%?X<;$ 77
M3E2.DA%A?IWR*B2C@XJR0O%K/]:-&;M!_TZS$X*!$(P$/_F4$ Z$\(T0?4J(
M!D(T(Z"^%+,W>RQQD7/6.;P_W1;K2^2O([7[I0Z:S3;?U/8(%;T5:1CDZ*:%
M!LRVQP03C#\BD%(?4P2V%-M@09\EV"T12?@>LE]"?&]E=Q%:"PV-0/2NT%F2
M;8^)#:;I??@K;V9V"8K2++!;B:Q6(HN5:&8E6F3)DM7,R1*3^/%LWY88?Q7:
MS<96L['%;&P72*P"B44@F56[Q,3!!W<LM29)%P))^L&99%:![#]<+C%1XLV2
MH,G#H\ OIJD)IV371NK[.XF.??,QT ]W%M^J?MJWOS>9OAG_P/Q2-\(Y,JG:
M@GF\9\8D*(O>@SJN2O7_<4'@+/4T57/>=\%^(5D[-'@T_LL4_P!02P,$%
M  @ :8=94'Z**>#B 0  ]@4  !D   !X;"]W;W)K<VAE971S+W-H965T-S8N
M>&ULC931CILP$$5_!?D#UD!(2") :K:J6JF5HJVZ?79@"&AM3&TG;/^^MB$H
M;0<I+]AC[IRY8["S0:HWW0"8X%WP3N>D,:;?4ZK+!@333[*'SKZII1+,V%"=
MJ>X5L,HG"4[C,-Q0P=J.%)E?.ZHBDQ?#VPZ.*M 7(9CZ?0 NAYQ$Y+;PTIX;
MXQ9HD?7L#-_!_.B/RD9TIE2M@$ZWL@L4U#GY$.T/D4_PBM<6!GTW#UPK)RG?
M7/"ERDGH' &'TC@$L\,5GH%S1[(^?DU0,M=TB??S&_V3;]XV<V(:GB7_V5:F
MR<F6!!74[,+-BQP^P]30F@13]U_A"MS*G1-;HY1<^V=07K218J)8*X*]CV/;
M^7&8^+<T/"&>$N(Y(4I\+V,A[_PC,ZS(E!P"-6Y^S]PWCO:QW9O2+?JM\.^L
M>6U7KT6Z2C-Z=:!)<Q@U\9TFGA74TN<2,5HB]NG)7R6V.&"% E8(8/>/1T23
MA'B1!"V2(( (!ZQ1P/H!EXAFR>4&+;)!  L?(T4!Z0,N$<V2RRU:9(L 5CA@
MAP)V#[A$-$LNHQ#_]T,$D2P@%HY/](!33/2?57IW8MV-^(VI<]OIX"2-/?S^
MB-92&K# \,G^1XV]A.> 0VW<-+5S-=Y$8V!D/]VR=+[JBS]02P,$%     @
M:8=94.9UX%G[ @  ] H  !D   !X;"]W;W)K<VAE971S+W-H965T-S<N>&UL
MC991;YLP$,>_"N*]Q3;&0)5$:D#3)FU2U6G;,TV<!!5P!D[2??O9AE"P+U5?
M"CB_N_O?]6S?XB+:U^[ N?3>ZJKIEOY!RN-#$'2; Z^+[EX<>:-^V8FV+J3Z
M;/=!=VQYL35&=140A%A0%V7CKQ9F[:E=+<1)5F7#GUJO.]5UT?Y;\TI<EC[V
MKPO/Y?X@]4*P6AR+/?_)Y:_C4ZN^@M'+MJQYTY6B\5J^6_J/^"''1!L8XG?)
M+]WDW=.IO CQJC^^;9<^THIXQ3=2NRC4X\PS7E7:D]+Q=W#JCS&UX?3]ZOV+
M25XE\U)T/!/5GW(K#TL_\;TMWQ6G2CZ+RU<^)!3YWI#]=W[FE<*U$A5C(ZK.
M_/4VITZ*>O"BI-3%6_\L&_.\#/ZO9K !&0S(:(#9AP;A8!"^&] /#>A@0"V#
MH$_%U"8O9+%:M.+BM?V_]UCH+L(/5%5_HQ=-L<UOJCR=6CVO8AHM@K-V-##K
MGB$3!H]$H+R/(0@48DT<<S(/D+D$"^=([B(8I;"*$$PT- [HQ$%$8BO1GHD,
MTQB&XCBQRI&Y5!A18N64 Q1F:01+IJ!DZDB.*;,D]PR;A,&(V?5U(62I=0D:
MPE(C4&H$2+6K&SDQ[@A#J951!F$(D=12#& X2=B-SF2@:@:H3BS5S(D3$L2L
M^F4N15B*[2H#% XG=9I)CD'),2#9*LTZ=L)$R&YBE[F+L)5[[D(8IPDL-P'E
M)NZN"ZVJK!.W]U*U5RS! .7NS=REYGMS)CD%):>?."A2)PQ+0FHWA4M%2C&U
M)+M4R'!XXVS#"#[%D=L6D5WG 9JU'Z6)==)F$(:IG5P.82EA-TJ-;]P^&-"-
M;=T8V.H4.><RR*'4*3C$Q=&M;8C!2^T1DT]T]@!-+X$XB</$%NYB0#OE #;O
MIUYW,+GZ:][NS5C5>1MQ:J2^02>KX^CV:"8W:WVM1SHS4KR[Z>?!'T6[+YO.
M>Q%2#29F?-@)(;E2B>Z5OH,:0<>/BN^D?HW5>]O/8?V'%,=AQ@S&07?U'U!+
M P04    " !IAUE0 8A& ) !   ; P  &0   'AL+W=O<FMS:&5E=',O<VAE
M970W."YX;6QM4^U.XS 0?!7+#X!;E]*J2B)=.9U  JD" ;_=9--8^"/8;@-O
MS]I.HQ[B3^Q=S\[LK)UBL.[==P"!?&IE?$F[$/H-8[[N0 M_97LP>-):IT7
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
M#0/*XV@8_3=V9K66&Q(=8\MK:?^C[4DJW@Q>-$I#W_IOU=KO9?!_-0L;H,$
M?=0@'0S2T2![5Y\-^FS40VL ^I'8U&RHHLNYX)=(]+/;4;.(X"S3R=^:1IMK
MVZ>S(W7K>5DD: [.QM&@6?4:--$XBHVOP.DH 1I@I$!!"F3MLQN*U*'H-;G5
MM+TF3?3/00G(2#F5W>"D09PT@),Y.+T&3^)\@EI5.#@!&4)9=@<G"^)D 9S<
MP<F\.&YBWE/<0.1!B-R#P 5V('(O!,I+["Z6@"J!!(9A<! &>S"P<#*_PGX8
ME#K$&U\$<8;"*"2(0GR4G#@HQ(M29 G,W1D*R$B1DCL[J0CB%(&UXDY3X<7)
M<V>W;7P-3$@>)BF#)&5@P;B;J/2CZ$U]*UK[CB!R'&U\1V5R9QIA$CX(DP],
MY""Z/80(P<0]#P,Z@M,2WT%RS^;;WO"9"?U#T\O+*B#"'@687!8-$P=[#\MH
MRT^M,D?DI+6_ZU=PMK8WL]/^",TC(-2C0:[/ _ _1/^X^$[%H6IE],*5ON;L
M9;3G7#'-GSSH%![U>V:LU&RO3)'HLN@O];ZB>#<\6,#X:EK^ U!+ P04
M" !IAUE0:L0=G^0!   5!0  &0   'AL+W=O<FMS:&5E=',O<VAE970X-"YX
M;6R-E-V.FS 0A5\%\0!K,+^- *G9JFJE5HJV:GOMP!#0VIC:3MB^?6U#4 JN
MU%S$'G/F?#/&N)BX>)4=@/+>&!UDZ7=*C0>$9-T!(_*)CS#H)RT7C"@=B@N2
MHP#2V"1&$0Z"%#'2#WY5V+63J I^5;0?X"0\>66,B-]'H'PJ_="_+[STETZ9
M!505([G -U#?QY/0$5I=FI[!('L^> +:TG\?'HZ9T5O!CQXF^3#W3"=GSE]-
M\+DI_< 4!!1J91R('F[P#)0:(UW&K\737Y$F\7%^=_]H>]>]G(F$9TY_]HWJ
M2C_WO09:<J7JA4^?8.DG\;VE^2]P ZKEIA+-J#F5]M^KKU)QMKCH4AAYF\=^
ML..T^-_3W EX2<!K IY[F4&V\@]$D:H0?/+$O/<C,:\X/&"]-[59M%MAG^GB
MI5Z]57F0%>AFC!;-<=;@!TV,TU6#M/\*P4X(M@;Q7Y!\ YDUB=4,5I,DD1L2
M.2&1 _)N YDUZ0,D3/-_4&(G)=Y3PF!#B7>4P(U(G(C$@0@WB.1_$:D3D3H0
M>(-(=X@\"O3/S<F<G&S'"9/MZ<IV+SZ/,(ZV!PP]G&AS87PEXM(/TCMSI3\.
M>X1;SA5HR^!)NW7ZCEH#"JTRTTS/Q?RESH'BXW()H?4FK/X 4$L#!!0    (
M &F'65#QE,LUE0(  /D(   9    >&PO=V]R:W-H965T<R]S:&5E=#@U+GAM
M;(V6[9+:(!2&;R63"S ?!I(ZT9GUJW:FG=G9G;:_45$SFX044+=W7R 8#:#5
M'P;(\[[GG$ @^9G0#W; F'N?55FSL7_@O!D% =L<<(78@#2X%G=VA%:(BR[=
M!ZRA&&V5J"J#. QA4*&B]B>Y&GNEDYP<>5G4^)5Z[%A5B/Z=XI*<QW[D7P;>
MBOV!RX%@DC=HC]\Q_]F\4M$+.I=M4>&:%:3V*-Z-_9=HM,HDKX!?!3ZSF[8G
M*UD3\B$[W[9C/Y0)X1)ON'1 XG+",UR6TDBD\4=[^EU(*;QM7]R7JG91RQHQ
M/"/E[V++#V,_\[TMWJ%CR=_(>85U/<#W=/'?\0F7 I>9B!@;4C+U[VV.C)-*
MNXA4*O397HM:7<_:_R)S"V(MB#N!B/U(,-2"X54 'PH2+4BN@N2A &@!>%8
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
M$)"1D*B+G>G*O,+-*\0\2'7O,I2!13Y3;O6Y#IVZN)A0E$8@VL+%)&%4?K(
M--XUC70-;+@SC8RBEB(,85TPD''.&-@)%A@H0SOU&&X^PLU'B'FX2;>,NIR]
M/6>/QB P"H\N0WH16'E/&*3 @GI&LX'Y-$%] T\O6#H-1F"*02&LL0N%/0)Z
M-W<AWG/V91=B/2'QNM;OFNB;&D$J"XHV[J"OA^@!I\ >_XA0MKKP\8M2\)'Y
MC&8$MB:X+3 )7M"$&L2:HI13882R)8;/,82R-89;#T+9(O-/BNR\CE_?QM^2
M[RC[?D>]1R#-!? 17)P04E-LFN-SZ2WS0U;5#[:+UO,1_;XYH8/V,>U/*=(^
MJX_T2/L=I?TYQ>Y8X_9.DR/XL-3^A["(B\TN*[VWO+*GH>; LL[SRMC^DIY]
M#&]-O#I?)&9=U3^5_5VT9_?VHLKWW?\2P?G/D='_4$L#!!0    ( &F'65!^
MO=+GC@(  '4(   9    >&PO=V]R:W-H965T<R]S:&5E=#@X+GAM;'V6VXZ;
M,!1%?P7QWN%^BPC2A$S52JT4S:CMLT.<@,9@:CO)].]K&T+ ]N0EV,[>YRQ?
M.":_8O).:PB9]=&BCJ[MFK%^Y3BTJF$+Z!/N8<?_.6+2 L:[Y.30GD!PD*86
M.;[KQDX+FLXN<CFV(T6.SPPU'=P1BY[;%I!_&XCP=6U[]FW@M3G53 PX1=Z#
M$WR#[%>_([SG3%$.30L[VN#.(O"XMI^]U8OG"H-4_&[@E<[:EIC*'N-WT?E^
M6-NN((((5DR$ /QQ@25$2$3B''_'H/:44QCG[5OTKW+R?#)[0&&)T9_FP.JU
MG=K6 1[!&;%7?/T&QPE%MC7._@>\0,3E@H3GJ#"B\M>JSI3A=HS"45KP,3R;
M3CZO8_R;S6SP1X,_&7CN1X9@- 1W0_S0$(Z&\&X('QJBT1 I!F>8NUS,+6"@
MR F^6F0X#ST0Q\Y;17R[*C$H=T?^Q]>3\M%+D09Q[EQ$H%&S&33^3!.Y[E)3
MZAIO4CB<8,+P31@;7[>[F9)"U_A+Q597Q,%2\O(XT8(T,"Y8( .$BP5+%-)!
M$TE--Y!F@4*RU47>C'9!$AI)0IU$!1DD\2Q'%@=^JI#HJL0+9CN\8(F,+)%A
M590T9:2E^9(D*HM!Y+E>I.QBI"]P&(5FX-@('!N U0,7:RRIGWURK!-CED3/
M$JIO3J)E\?PD3,QI4F.:U)#&4]*DADU6UEZ7!)]@9$:,S("AO*)EII_Z3-G=
MK4$SJTD+$'Y'&:N::T )U++FZJ>(;X]Z[IU9*6TA.<E[C5H5/G=,5)+9Z'1W
M/ONB%"OCI;A398F^AQDNY)^ G)J.6GO,>*&7Y?B(,8.<TGWB?#7_!I@Z"!Z9
M:":\38:+<.@PW(^7O#-]:13_ 5!+ P04    " !IAUE0J+F I@D#  !Z"P
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
M6%,]9?6&DV%Z@7CS6ZS\!U!+ P04    " !IAUE0FU+.Z= "  !6"P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Y,BYX;6R-5NV.FS 0?!7$ QR8KT!$(EU(
MJE9JI=-5;7\[B9.@ TQM)[F^?6T@7++>G/('L#TS.PN+O?F9BS=Y8$PY[W75
MR)E[4*J=>I[<'%A-Y1-O6:-7=ES45.FAV'NR%8QN.U)=>8'O)UY-R\:=Y]W<
MBYCG_*BJLF$OPI''NJ;BWX)5_#QSB7N9>"WW!V4FO'G>TCW[R=2O]D7HD3>J
M;,N:-;+DC2/8;N8^D^F*1(;0(7Z7["ROGAV3RIKS-S/XMIVYOG'$*K911H+J
MVXD5K*J,DO;Q=Q!UQYB&>/U\4?_2):^365/)"E[]*;?J,'-3U]FR'3U6ZI6?
MO[(AH=AUANR_LQ.K--PXT3$VO)+=U=D<I>+UH**MU/2]OY=-=S\/^A<:3@@&
M0O H(1P(X4@@R:>$:"!$'X3H4T(\$&) \/K<NY>YI(K.<\'/CNCKH:6F[,@T
MUI]K8R:[K].MZ?<I]>QIGDZBW#L9H0%3])C@"D-&A*?5QQ !%J((+'IP&V!I
M(Y+P%K*R(<3/<!<AFFC8"40WB<8@40R3 *\/8%8V)B81;C9"S49(D DPBV%2
M8!;#9, L@DE]W&R,FHT1 0+,8I@ #Y*@01)$ -1(@6% +2\Q#"B#%89)<+,3
MU.P$$8"?#\/ _^(!S K#I+C9%#6;6@(D 687"": NX2-25-0:TL$D_D@(4SG
MSMO/T(0R) BHQX6-(0'\TQ&=%/Q@*RS6G;HF/KX!^[85&*9 0'9IHR!H& -E
MX1W'=XX,@DA89P8&BJ%C# 0W4Q0TN>,8GD"WJ_C)0.SMVJKN!0)*LSO_&<$W
M=6+OM%;1+1!0FL&#SKLZW6LF]EVK)9T-/S;*[-)7LV,[MPA,=P#F"]/F(?//
M))@N"<;0+T*OA.A*I%?Z'N3#5-]Q_J!B7S;267.E.YFNW]AQKIC.V'_29\-!
M-[GCH&([91XG^EGTG5X_4+P=NEAO;*7G_P%02P,$%     @ :8=94,!P!,5(
M P  !@X  !D   !X;"]W;W)K<VAE971S+W-H965T.3,N>&ULC5?;CILP$/T5
MQ'L7Q@$#41)I<U,KM=)JJ[;/;.(D: &GX"3;OZ^Y+!O&0[(O"3;GC,^,[8,]
MN<CBM3P(H:RW+,W+J7U0ZCAVG')S$%E</LBCR/6;G2RR6.EFL7?*8R'B;4W*
M4H>Y+G>R.,GMV:3N>RIF$WE2:9*+I\(J3UD6%__F(I67J0WV>\=SLC^HJL.9
M38[Q7OP4ZM?QJ= MIXNR33*1EXG,K4+LIO8CC->L)M2(WXFXE%?/5I7*BY2O
M5>/;=FJ[E2*1BHVJ0L3Z[RP6(DVK2%K'WS:HW8U9$:^?WZ.OZ^1U,B]Q*18R
M_9-LU6%JA[:U%;OXE*IG>?DJVH1\VVJS_R[.(M7P2HD>8R/3LOZU-J=2R:R-
MHJ5D\5OSG^3U_Z6-_TZC":PEL,\21BUAU!&TV%L$KR5X'P1^D^"W!/^#X-TD
M\); $<%IBE57?QFK>#8IY,4JF@5TC*MU"F.NYW=3==;36;_3$U#JWO,L<MV)
M<ZX"M9A%@V%7&!]CEB8&.H2C%70R&"5CP0PZ0P/<1:Q,!!_U(6L3 FY$ZQR1
MY1K5 ;Q>N0 I;3!^C<F;04(6H8*M")3'.4*M*504,5JR1TKV",FH=',3 \Q#
M:348?BW%C1A.RT3AE&XA>NGX9#H^D0Z:YJ5/2(4 *35!D><.2.&D%$Y(P57C
MQBA?0@_I75$@/$=K"A2.:+T!J3<@]/IHKP?&@L,[_2YB92(XA %>!X&1CQ^Z
MX-$)A61"(9$0IP-$9("("(#6R<+$^"'>\K<Q/2'@TC[L$E+"@1 #5@Z?R(8$
M12B=.Z"^&-+0'X&9(6!@=P'MM4"8+:#*KTC0@#\";9! ."3@+4J /']HBFGG
M L*Z /M%"[K>/%X0&5D3*(CPUXY C?B0Q0'M<4"8'/@#(6C; <IW&%Z7IFGT
M/R_]D6@_ ,H0C J'MRVY/Q#M&T 9![;2%G3+2^]#5@2D[Z;]TQ5VE_Y;VCB8
MN=V-S_^< GD!4N%<'3LS4>SK2T-I;>0I5Q7WJK>[F,Q9=6Q%_4M]80&B_Y&Y
MXQ5SB3=:H'[37$D^AFYN2#_B8I_DI?4BE3Y(U\?=G91*Z+S<!UW9@[Z4=8U4
M[%3U&.CGHKF9- TEC^VMR^FN?K/_4$L#!!0    ( &F'65#=?%E2(@,  *8,
M   9    >&PO=V]R:W-H965T<R]S:&5E=#DT+GAM;(57;6^;,!#^*XCO+=C8
MO%1)I))HVJ1-JCIM^TP3)T$%G(&3=/]^MJ$T\1WIEX"=Y^Z>._L>';.S;%^[
MO1#*>ZNKIIO[>Z4.#T'0K?>B+KI[>1"-_F<KV[I0>MGN@N[0BF)CC>HJH&$8
M!W51-OYB9O>>VL5,'E55-N*I];IC71?MOUQ4\CSWB?^^\5SN]LIL!(O9H=B)
MGT+].CRU>A6,7C9E+9JNE(W7BNW<?R0/*Y(8 XOX78IS=_'NF51>I'PUBV^;
MN1\:1J(2:V5<%/IQ$DM15<:3YO%W<.J/,8WAY?N[]R\V>9W,2]&)I:S^E!NU
MG_NI[VW$MCA6ZEF>OXHA(>Y[0_;?Q4E4&FZ8Z!AK677VUUL?.R7KP8NF4A=O
M_;-L[/,\^'\WPPWH8$!' Q+?-(@&@^C#@-TT8(,!<PR"/A5;FU6ABL6LE6>O
M[8_W4)A;1!Z8KO[:;-IBV_]T>3J]>UID))X%)^-HP.0]AEY@R(@(M/<Q!,5"
MY!28T^L 2XB(HVO("D)(F.$L(C31R#I@5XDF3J(]AEM,8S&APQ0B8IXE*4Z$
MH4080B1UB/28>#),3P:B$AI'$V?#43(<(9,Y9#@(0UE('"X(B"?<.40.JD?C
M=*)X,<HWAGRI<T9Y#*A$C+M7#H+NXO3"U167!.62(%R<LN0)#!.1R(4M$9BN
M\41E4I1-BK!QDLY3&(:%G+B7',(FZI*A3#*$B=/.>78C1$\"(I 66$'4C18@
M(2Z!(2#,J2L- ^B*#TD3ES4"XVE(V 2A"4TF2 692XB 2&G&F,L'HNXB'B83
M?% !?R04X<-=/A1$(J&KL$L$E27)U'GA2DX0*0>--X ^[3P,-]UZ!)=T@F@Z
M:#X"Y1KM/@0WT7X$UW0"19U'KD@2*-B "(0@5WY%H*K?NO*XKA-,V,$< D4;
M<$9TG9')X\2%G6#*#@0A^7180"!W).3,O>[!Q;!6BW9G!^'.6\MCH\S,<[$[
M#MN/U Q[SGYNAG [!'ZXZ2?X'T6[*YO.>Y%*CY)VX-M*J82F&=YK@GO]T3 N
M*K%5YC71[VT_.?<+)0_#5T$P?IHL_@-02P,$%     @ :8=94-'JZ5*, 0
M& ,  !D   !X;"]W;W)K<VAE971S+W-H965T.34N>&UL;5/13N,P$/P5RQ^
M4P,%JB02+4*'="=5(+AG-]DT%G8V9[L-]_>W=M*HA_H2>]>S,SMK)Q_0??H6
M(+ O:SI?\#:$?B6$KUJPRE]A#QV=-.BL"A2ZO?"] U6G(FN$S+*EL$IWO,Q3
M;NO*' _!Z ZVCOF#M<K]78/!H> +?DJ\ZGT;8D*4>:_V\ ;AO=\ZBL3,4FL+
MG=?8,0=-P1\7J[6,^ 3XT##XLSV+3G:(GS%XJ0N>Q8; 0!4B@Z+E"!LP)A)1
M&W\F3CY+QL+S_8G].7DG+SOE88/FMZY#6_![SFIHU,&$5QQ^P.3GEK/)_$\X
M@B%X[(0T*C0^?5EU\ 'MQ$*M6/4UKKI+ZS#QG\HN%\BI0,X%BYOD911*G3^I
MH,K<X<#<./M>Q2M>K"3-IHK)-(IT1LU[RA[+!WF?BV,DFC#K$2//,,OK&2*(
M?M:0%S5DJK_Y3^/AF\8%S'7V342<F8IOYI=R>]UYML- \TDN&L0 Q)==T46T
M]$SGP$ 3XO:.]FZ\K#$(V$_O4,P_0_D/4$L#!!0    ( &F'65"[J\H97 (
M %@'   9    >&PO=V]R:W-H965T<R]S:&5E=#DV+GAM;'U5VXZ;,!#]%<3[
MKKD:-B)(2Z*JE5HIVFK;9X<X 2U@:CMA^_>U#2'$=O,2V\,Y,V?&SDPV$/K!
M*HRY\]DV'5N[%>?]"@!65KA%[)GTN!-?CH2VB(LC/0'64XP.BM0V(/ \"%I4
M=VZ>*=N.YADY\Z;N\(XZ[-RVB/XM<$.&M>N[5\-;?:JX-( \Z]$)_\3\O=]1
M<0*SET/=XH[5I',H/J[=5W^U321> 7[5>&"+O2,SV1/R(0_?#FO7DX)P@TLN
M/2"Q7/ &-XUT)&3\F7RZ<TA)7.ZOWK^HW$4N>\3PAC2_ZP.OUF[J.@=\1.>&
MOY'A*Y[RB5UG2OX[ON!&P*42$:,D#5._3GEFG+23%R&E19_C6G=J'2;_5YJ=
M$$R$8";X\"$AG CAC1 ])$03(=((8$Q%U6:+.,HS2@:'CK?;(_F(_%4DJE]*
MHRJV^B;*PX3UDK^$?@8NTM&$*49,L,#<$$!XGT,$MA!%8-"#^P ;$P'#>\C6
MA/C>BUU%:$TT5 ZB9:+^BY;HB(D5IAN51IY6C8T%%">Q)M<"@FEJUQM9]4:F
MWE"K6S%BX"+*4QA[GB;8B@ITQ3:4Y__GHF.KY-B0'"=0DQP;8=)(N^N-!>-I
MJ6\MF#2TBX56L= 0Z^LU*: 11#RZ0*^OB=(0VT>(.ZF)56IB>0I:S8K$>'"^
M!V&D23513WZ4:FI-4 QUO6#17UI,3ZIW,Z<DYX[+O^G".H^'UT#V)\U>B+$Q
M=OF;FW'F_$#T5'?,V1,NNI_J44=".!82O6>AKA)C;CXT^,CE-A%[.C;[\<!)
M/\TQ, _3_!]02P,$%     @ :8=94-*X /+T 0  1P4  !D   !X;"]W;W)K
M<VAE971S+W-H965T.3<N>&UL?53;CILP$/T5BP]8<]OL)@*D3:*JE5HIVJKM
MLP/#16MC:INP_?O:AK"$6/N"/<,YQV=\F63@XDW6  J],]K*U*N5ZG88R[P&
M1N0#[Z#5?THN&%$Z%!66G0!26!*C./3]#6:D:;TLL;F3R!+>*]JT<!)(]HP1
M\6\/E ^I%WC7Q&M3U<HD<)9TI(*?H'YU)Z$C/*L4#8-6-KQ% LK4>PEVQ]C@
M+>!W X-<S)&IY,SYFPF^%:GG&T- (5=&@>CA @>@U AI&W\G36]>TA"7\ZOZ
M%UN[KN5,)!PX_=,4JDZ]9P\54)*>JE<^?(6IGD</3<5_APM0#3=.]!HYI])^
M4=Y+Q=FDHJTP\CZ.36O'8=*_TMR$<"*$,R'8?$J()D+T08@_)<03(5X1\%B*
MW9LC421+!!^0&$^W(^82!;M8[WYNDG:S[3^]/5)G+]DVBA-\,4(39C]BP@4F
MF!%8J\]+A*XE]N$=/;Q=X'"/V$2WD.,])/"W;A>1L]#("L0WA3ZN"G5A_)57
M%V:S,NO"/+G-QDZSL4/@>676A=FNS#HP\:J@HPNS/E^\N$X,1&6?JD0Y[UME
M3F61G;O!2VBNXRJ_UUUB?-0?,F.+^4%$U;02G;G2E]U>R9)S!=JB_Z#?;:V[
MVAQ0*)69/NFY&-_V&"C>36T+S[TS^P]02P,$%     @ :8=94&5\LCS\ @
M"PX  !D   !X;"]W;W)K<VAE971S+W-H965T.3@N>&ULC9?A;ILP%(5?!?$
M!1M,2)5$6A--F[1)5:=UO]W$25 !,W"2[NUG#$$)/M[X$S Y]][C&W\.7EQD
M_=X<A5#>1Y&7S=(_*E4]!D&S/8J"-P^R$J7^9B_K@BL]K ]!4]6"[TQ0D0<T
M#).@X%GIKQ;FV7.]6LB3RK-2/-=><RH*7O]Y$KF\+'WB7Q^\9(>C:A\$JT7%
M#^*'4#^KYUJ/@B'++BM$V62R]&JQ7_J?R.,F,@%&\9J)2W-S[[53>9/RO1U\
MW2W]L'4D<K%5;0JN+V>Q%GG>9M(^?O=)_:%F&WA[?\W^V4Q>3^:--V(M\U_9
M3AV7?NI[.['GIUR]R,L7T4^(^5X_^V_B+'(M;YWH&EN9-^;3VYX:)8L^B[92
M\(_NFI7F>NGS7\-P .T#Z!! XG\&1'U -#4@[@/B44#03<7T9L,57RUJ>?'J
M[N>M>+N*R&.LN[]M'YIFF^]T>QK]]+R:QW01G-M$O>:IT] ;S4BQMA5)="_9
MV!(2S@=-H$T.3BET2DV"^,[IJ,A3IV%&4QI-.')J*Q*2SD:JC:UB:4AB;#>"
M=B-@-QZ901J&B\2P2 P2)#@!@PG8_YNZ9E8S"*5LALLDL$PRH1E(XR@R@T5F
M($&*$Z0P03JA&:G5C"B<1027F<,R\PG- !I"<1$28K!#4,8!'''L#61"0WK1
M_?*(TM!1";--$-SCGD"18X40#"4!Q#&758P<0<Q938GM;8:%KA\0HTD0FU9/
M@(@Y5B/!;!( 'G-9Q>01@!ZS>H)$CBV58$ )()0Y-DR"X2. +-LJ$CGV58KQ
MHP _UYY),7X4X&=9A2+'KD<=?ZR *^;Z:\9<4<25916($@=\%,-' 7R)8[E3
MC!5%Q%A6@2AQ,$$Q5A1@=?-2=)\"8T6G8(5$B0,KBK&B *O$@17%6-$I6"&1
MJZL1QBH"6"4.,B.,530%*R@:=S6X><ENCTG?>7W(RL9[DTJ_KYNWZKV42NB$
MX8->44=],AL&N=BK]G:F[^ON>-(-E*SZHU<PG/]6?P%02P,$%     @ :8=9
M4!T%!&!R @  @ D  !D   !X;"]W;W)K<VAE971S+W-H965T.3DN>&ULE5;;
MCILP$/T5Q <L#/>LDDA-HJJ56BG:JMMG)W$"6L#4=I+MW]<V#B)AV-(7?.',
MF3,#1_;\ROB;R"F5SGM5UF+AYE(VSYXG]CFMB'AB#:W5FR/C%9%JR4^>:#@E
M!Q-4E5[@^XE7D:)VEW.SM^7+.3O+LJCIECOB7%6$_UG1DET7+KBWC9?BE$N]
MX2WG#3G1'U3^;+9<K;R.Y5!4M!8%JQU.CPOW$SQO(-,!!O%:T*OHS1U=RHZQ
M-[WX>EBXOE9$2[J7FH*HX4+7M"PUD]+QVY*Z74X=V)_?V#^;XE4Q.R+HFI6_
MBH/,%V[F.@=Z).=2OK#K%VH+BEW'5O^-7FBIX%J)RK%GI3!/9W\6DE6614FI
MR'L[%K49KY;_%H8'!#8@Z (@^C @M 'AU(#(!D0/ 5Y;BNG-ADBRG'-V=7C[
M>1NB_R)XCE3W]WK3--N\4^T1:O>RG"7IW+MH(HM9M9B@APGN$>LA(@GO(9LA
M!/Q9A_&4R$YI@"H-#$'45QH])%FUF-A@:H/Q'Y0.$0EDZ0-J,T3%F0\1+C=$
MY89#N4F&$T0H0?3O>M<M)NGKA#1,\#0QFB9&=(Y\EP0E2";H3 8ZP8=PI)\I
MFB8=INE]MCN"#"7()NC,_J>?,S3-#-$). 'XN"7]"4HM:*)4&#$_(&*#$0K<
ME3#!EFL+2E!?WF?!S02(F])PA *W$TSQ$PP-]<&/"KBC +%4.D:!>PJFF J&
MKAKK*FXIP#P5CU#@IH(IKK*@>+2K]H08PI3%'TOR>B>;OIM\)_Q4U,+9,:D.
M27.4'1F35#'Z3XHK5]>A;E'2H]335,UY>R=H%Y(U]K[C=9>NY5]02P,$%
M  @ :8=94,5L$,Q. @  G <  !H   !X;"]W;W)K<VAE971S+W-H965T,3 P
M+GAM;)55VXZ;,!3\%<1[%]O<(X*4;%6U4BM%6VW[["1.0&LPM9VP_?OZ0B@*
M1DU?\(4Y,W,,QZ?H&7\3%2'2>V]H*]9^)66W"@)QJ$B#Q1/K2*O>G!AOL%1+
M?@Y$QPD^FJ"&!@B )&APW?IE8?9VO"S81=*Z)3ONB4O38/Y[2RCKUS[T;QLO
M];F2>B,HBPZ?R7<B7[L=5ZM@9#G6#6E%S5J/D]/:W\#5%D8ZP"!^U*07D[FG
M4]DS]J877XYK'VA'A)*#U!18#5?R3"C53,K'KX'4'S5UX'1^8_]DDE?)[+$@
MSXS^K(^R6ON9[QW)"5^H?&']9S(D%/O>D/U7<B54P;43I7%@5)BG=[@(R9J!
M15EI\+L=Z]:,_<!_"W,'H"$ C0'(YF*%C/./6.*RX*SWN#W\#NMO#%=(G<U!
M;YJC,.^4>:%VKV6>)D5PU40#9FLQ:(*!(R)0[*,$<DELT2P\0JF;('1Z# U!
M-"&()P16Q&)B@VDM)@,P<LM$3IEH+A.".QF+228R"<Q2X):)G3+Q3"9/<C=!
MXB1('O"9S'Q" ,.%XTB=,NG<9QJZ"3(G0?: S^Q_?.9.F=SA,W830."N ?#
M#S: IE;S%"Q\>;A0;-#A=28$9T)A!I8R<I;<!B*'4'8OA&9"'\(T7U)RUR:<
M%V>>YO=*X4PI0@L?&;J+$SY2G0,H_L?O%$PNQX;PLVD+PCNP2VMZTF1W;#T;
M9"[7OW#;M[YA?JY;X>V95%>TN4A/C$FBW( GY:-2K7)<4'*2>IJJ.;?]PBXD
MZX9>&(P-N?P#4$L#!!0    ( &F'65#<>-?IQP0  "P8   :    >&PO=V]R
M:W-H965T<R]S:&5E=#$P,2YX;6R-6=MNXD@0_17$!^"^VQT!4H")9J5=*9K5
M[#X[T EH;,S83IC]^VU?PD+7Z6SR$&QSJNIT=_E45S,_5_6/9N]<._E5%L=F
M,=VW[>DN29KMWI5Y,ZM.[NB_>:[J,F_];?V2-*?:Y;O>J"P2P9A)ROQPG"[G
M_;/'>CFO7MOB<'2/]:1Y+<N\_F?EBNJ\F/+I^X-OAY=]VSU(EO-3_N+^=.WW
MTV/M[Y*+E]VA=,?F4!TGM7M>3._YW8/J#7K$7P=W;JZN)]U0GJKJ1W?SVVXQ
M91TC5[AMV[G(_<>;6[NBZ#QY'C]'I]-+S,[P^OK=^T,_>#^8I[QQZZKX^[!K
M]XMI-IWLW'/^6K3?JO-7-PY(3R?CZ']W;Z[P\(Z)C[&MBJ;_/]F^-FU5CEX\
ME3+_-7P>COWG>?3_;H8-Q&@@+@9"?V@@1P-Y,>#J0P,U&JC/&NC10'_6P(P&
M)C!(ALGJ9W^3M_ER7E?G23TDT"GO\I3?&;^^V^YAOYS]=WX!&O_T;6DS-D_>
M.D<C9C5@Q!6&7Q")]WX)(5"(E2#FXC; FB*,O(5L*(0S>XOY0C$VX[>8!X01
M>#023ICL':@;!P'9AP%C>LQQP'#6_>% "@92() *5F; I%>!M)BQ-)A>BE)R
MEF7!# ,4FW&)*6M(60/*.J \8/3UW$@;@-84I T/!K^A(&-U)#,-Y&L 7Q/P
M-32*DL'<K2E(&QVDYP: ,AO)O13R30'?%#O(H(,,. C&LLI(\@JA53#Y:XJ2
M4O%PR "EV-5JWU"VD+(%E(,P*_LIRA2%*"-?J8DL$V=85!DE;8FJ,A*)&\-"
MU@ FA$F#-V:#O'$I(Z\OCQ0##GCSD#<G><QEB%HC5,I#S4$H'B4-R\L]%X1T
M)B(IQK&F<R#J5H3CEO3]U3;46H!2UI)Q Y1FL7'C^L!!@; R)$U!QJA('"SJ
M'*BZ#0L1 "D3*7<<BS$':AP6AM4(NGF)A> D^RC,R(RGX3)0F&71],.:S)$H
M$]KI9ZH>0(&R!U#QNL=Q'>"H$(25CR.--RPDG1$Z,E,F)$U12K(8:5P)."@%
MEI"V5%&8419'$EB_!=+O('E6$)1%XF"]%4AO8U2Q^@FJ?E0% $C%5$!@B11(
M(L,T%W3CZR52!W36 .9?SC#_-@AF=6P3+;!*"K2-#I-F!-WD,$O#31Y \8R+
MD#5 :1MKF+#D"B2YA#3=_W+#3:3R"2RZ HDNR70*XM%F1F"9%%0FO8_8M&#5
M$E2UO(^P3@-4/-FQT@BJ-#Y0I"Y(K"$2R4/(=03=[G\8V50 F-4FW ("E$Y9
MK+G%BB2I(J4RDE(2*Y($BD0:UQ'T?YTK@*'6%<%\[QH;>J2QIPKG%YT0AZC8
M#&%-DF!3EL;(8H60J-4.6X<1=#,M>B;"C@?!LEFLE$DL)!)J!)D]B#*12%A)
M)%222!LLL9)(L/^A+R?=LW"=DMX?P90F!U@(QD0T<[ P22A,D9526)@4$*;P
M!.N+ EUG^M$1%I83A38XX3PKV@1Z=0OB)%<'FJ6K7_KCZ&:RK5Z/;7>>=_7T
M<N1]+[H#T>#YBM]MAH/K_]P,Y^A_Y/7+X=A,GJJVK<K^4/2YJEKG.;*99[=W
M^>YR4[CGMKM,_74]G%\/-VUU&L_FD\L/!,M_ 5!+ P04    " !IAUE0MLW4
M?T("  !=!P  &@   'AL+W=O<FMS:&5E=',O<VAE970Q,#(N>&ULC97;CILP
M$(9?!?$ ,:= =D60-D15*[52M%7;:X=, EJ#J>V$[=O7!T*)X^[N3;#--[__
M&9QQ/E#VPFL X;VVI.-KOQ:B?T2(5S6TF"]H#YU\<Z2LQ4).V0GQG@$^Z*"6
MH"@(4M3BIO.+7*_M6)'3LR!-!SOF\7/;8O9G X0.:S_TKPO/S:D6:@$5>8]/
M\!W$CW['Y Q-*H>FA8XWM/,8'-?^4_BXS12O@9\-#'PV]E0F>TI?U.3+8>T'
MRA 0J(12P/)Q@1((44+2QN]1TY^V5('S\57]D\Y=YK+''$I*?C4'4:_]E>\=
MX(C/1#S3X3.,^2Q];TS^*UR 2%PYD7M4E'#]ZU5G+F@[JD@K+7XUSZ;3SV'4
MOX:Y Z(Q()H"PNS-@'@,B#\:D(P!B16 3"JZ-ELL<)$S.GC,?-T>JT,4/B:R
M^I5:U,76[V1YN%R]%&$0/.3HHI1&:&.@: Y-!)+RTQZ1:X]-=!<>W6Y0WA-I
M?(ML[Y%PYO/&1>S,--8"R8U &%B9&BC34&>@AT5L>2D=5+98I99C!Y4N5HG;
M<^+TG+@\AY9G)V17V G9-79"_S&\=!I>NA26EF$G9%6O=$*99=@)K=R&4Z?A
MU*5@GW\#+6=?TCHWY;O$]BWBQF?F])DY?$;VZ75"UG$I/P)MWX&,831K,BVP
MDV[@W*OHN1/JKSI;G>Z(IT@U*6M](^\.T^K_R9B+YQMFIZ;CWIX*V0)UHSI2
M*D!Z#!:RF+6\ZZ8)@:-0PTR.F>GX9B)H/UYF:+I1B[]02P,$%     @ :8=9
M4(0=Z4*8 P  )0\  !H   !X;"]W;W)K<VAE971S+W-H965T,3 S+GAM;(V7
MVVZ;0!"&7P5Q7V#/$-F6XD/52JT4M6I[3>RUC0JL"SANW[[+(03/CJW<V+#^
M9N:?V<-X9Q=3_:Z/6C?>WR(OZ[E_;)K30QC6VZ,NTCHP)UW:7_:F*M+&OE:'
ML#Y5.MUU1D4>TBB289%FI;^8=6-/U6)FSDV>E?JI\NIS4:35OZ7.S67N$_]U
MX%MV.#;M0+B8G=*#_JZ;'Z>GRKZ%HY==5NBRSDSI57H_]Q_)PX;$K4%'_,ST
MI9X\>VTJS\;\;E\^[^9^U"K2N=XVK8O4?KWHE<[SUI/5\6=PZH\Q6\/I\ZOW
MCUWR-IGGM-8KD__*=LUQ[L>^M]/[])PWW\SEDQX2$KXW9/]%O^C<XJT2&V-K
M\KK[]+;GNC'%X,5**=*__7=6=M^7P?^K&6Y !P,Z&E!YUX -!FPT(/RN 1\,
M^%L$<== # ;B+8+JRMOGWA5SG3;I8E:9BU?UZ^&4MLN./ @[7=MVL)N=[C=;
MS]J.OBQ(1.DL?&D]#="RA^@4&HG0NA]C4"S&DCKF(,#*)22[1M8N0J+DFMFX
MC!(25\K0:K#. ;^N!E"R["'9064/"4J(5" IA..*$A:!S# NIHGDN'*.*N>8
M<@Z4]Y":1&(J@+(1B 6$ -$N157 $URR0"4+3+( DEU(P6E?H8XD$(Q"(/<-
M"L5X4A)-2F(>@.!E#XE)\1)&.=P4+D422@"U=BDJ: RF:X-0+.81GIE",U-(
M9G M+Y6SEIE,E((SAF&2,KC($(Q+3F\</C$J.\9D@T#+V%G-@@81W!DNQ5D0
MQT T0D4!8;CF!-6<8)KAH9PXQ?E ):,"3,D*Y50"=]$:XV+%E,"5DPCO)Q&F
M'1ZA W5UR$2! IM_A6 D":!PC(H"<6/;DAM]D&"ZX0$Z4%=%8B(BL.88QQ,:
M"R@=X602QS<V)D'[ZR.AF'9XD@X46+[.UL0Q6(DUAI%@<CI="\?;+7E7OR58
MPTVHC"64_L[.O,9 K#5O4/!.;R9X<R;OZL[$[:G<GD(<9OF>+K[&*+>-;Q#L
M3A\G>",G6-MD$J8GG%HJ.XE$W8B%]U>"-5BF8"R)UNC6D8 W/()VO!B&0JE;
M!<1[%,&:%(>]=:"F39P+Z<Q5./GK7^CJT-W#:F]KSF73_CF>C(YWO4?:7AW
M^+*] W97BC<W_07R:UH=LK+VGDUC+R;=]6%O3*.M2GOP^M[1WEG'EUSOF_91
MV>>JO[CU+XTY#9?2<+P9+_X#4$L#!!0    ( &F'65!0XQ,3  ,  !4+   :
M    >&PO=V]R:W-H965T<R]S:&5E=#$P-"YX;6R-EE%OFS 0Q[\*XGV C3%0
M)9%*HFF3-JGJU.V9)DZ""C@#)^F^_6Q#*1R7JB\!F_^=?W<YCEM<9?/2'H50
MSFM5UNW2/2IUNO/]=GL45=YZ\B1J_60OFRI7>MD<_/;4B'QGC:K2IT' _2HO
M:G>UL'L/S6HASZHL:O'0..VYJO+F7R9*>5VZQ'W;>"P.1V4V_-7BE!_$+Z&>
M3@^-7OF#EUU1B;HM9.TT8K]T[\G=AE!C8!6_"W%M1_>.">59RA>S^+Y;NH$A
M$J78*N,BUY>+6(NR-)XTQ]_>J3N<:0S']V_>O]K@=3#/>2O6LOQ3[-1QZ2:N
MLQ/[_%RJ1WG])OJ (M?IH_\A+J+4<D.BS]C*LK6_SO;<*EGU7C1*E;]VUZ*V
MUVOO_\T,-Z"] 1T,"/_0(.P-PG<#]J$!ZPT8,/"[4&QN-KG*5XM&7IVF^WM/
MN:DB<L=T]K=FTR;;/M/I:?7N944"1A;^Q7CJ15DGHF/1H/"U^^$,BIV1T9DY
MG1ZPGBMX.)5LYA(2I#A%B$8:6@=L&BD R3H1MZ+:BAB-TI0#WKDL3"F-@6R#
MR#AA08AC,Q2;8=@@.5DGBL?8@1<!Z+DHC+TX!LR(*O%(@B-'*'*$(3. ',UR
M0WE$(PB-R((D"6!U(#)"8GZC0#B*S3%LP)/Q67HX]<($4,]5C'DL!=!S59AZ
MZ8U7*T:98XP9E&$6SY+SA22,4TB-Z6C"0IAL3!>&\>@MF9 G*'F"D8-BS!*L
M&&/(C:A2;U8B<Y5^1VX@IRARBB$#F"Q%DL/2!'801,8XCP( C<EB$@0X-@GP
M'A]@X* :LUX%BI:"-*X1F<XV[$@;S!OUV(T^0FY\G,AG>G:OFC3ME/ PAN2(
M#FGN&T0'NON4'?WHW1/ZF<;=J\9IBJB7,(@^E\T;_ 9133M\Q^V/9H-*- <[
M=[7.5IYK9;ZPH]UAMKNWHQW8S\S,9V>.=S?=P/@S;PY%W3K/4NG)Q<X7>RF5
MT)0:VW6.>D8=%J78*W,;Z_NF&]2ZA9*G?@CUATEX]1]02P,$%     @ :8=9
M4'343:VH 0  DP,  !H   !X;"]W;W)K<VAE971S+W-H965T,3 U+GAM;'U3
M[6[;, Q\%4$/$-E.FJZ!;6!-46S !@0=UOU6;#H6J@]/4N+N[4?)BI%FP?Y8
M(G5W.M)4.1K[YGH 3]Z5U*ZBO??#AC'7]*"X6Y@!-)YTQBKN,;0'Y@8+O(TD
M)5F196NFN-"T+F-N9^O2'+T4&G:6N*-2W/YY!&G&BN;TG'@1A]Z'!*O+@1_@
M!_B?P\YBQ&:55BC03AA-+'05_9QOMD7 1\"K@-%=[$FH9&_,6PB^MA7-@B&0
MT/B@P'$YP1:D#$)HXW?2I/.5@7BY/ZL_Q]JQECUWL#7REVA]7]%/E+30\:/T
M+V;\ JF>.TI2\=_@!!+AP0G>T1CIXI<T1^>-2BIH1?'W:14ZKF/2/]-N$XI$
M*&9"OOHO89D(RRL"FYS%4I^XYW5IS4CL]+,&'F8BWRRQF4U(QM[%,ZS68?94
MY]E=5K)34$J@QPE47("*CXCMOXCU<H8P=##;*&[:*")_]=%&?F5C CU$D(Z@
MU<-B?>7D!NA^45QY81?M">/ZG=N#T([LC<=.QWYTQGA P6R!,]#C"YD#"9T/
MVWO<VVE.IL";(3T!-K_#^B]02P,$%     @ :8=94*II5/,L!   .Q(  !H
M  !X;"]W;W)K<VAE971S+W-H965T,3 V+GAM;(V8VW+B.!"&7X7B ;#.DE.$
MJ@'"(;!5J9G:W6LG*($:&[.V$V;??N4#!+I[,^0BV,KW=[?T2QWLX3$O?I9;
M[ZO>KRS=E_?];54=[J*H?-GZ+"D'^<'OPU]>\R)+JG!;O$7EH?#)IA%E:208
M,U&6[/;]T; 9>RI&P_R]2G=[_U3TRO<L2XI_QS[-C_=]WC\-?-^];:MZ(!H-
M#\F;_^&K/P]/1;B+SE$VN\SORUV^[Q7^];[_C=^M7<TWP%\[?RPOKGOU3)[S
M_&=]L]S<]UE=D$_]2U5'2,+'AY_X-*T#A3+^Z6+VSREKX>7U*?JLF7N8RW-2
M^DF>_KW;5-O[ONOW-OXU>4^K[_EQX;OYZ'ZOF_S:?_@TX'4E(<=+GI;-[][+
M>UGE61<EE)(EO]K/W;[Y/';Q3S):(#J!. M"[J\$LA/(3X'Z4J Z@;I5H#N!
MOE5@.H&Y56 [@;U5X#J!NU40=X+X5@%G)^?8I\1\+3F;S6_.<K*;"R")VHW5
M[-1I4B6C89$?>T5[U@Y)?:3Y75"%X/5HL_>;/X;=6H;1CQ%G6@RCCSI4!XU;
M2%Q FK%KYA$S_$Q$H89S(8(L9"R0'E0QP81R_)J98D8SP#Q0#,@UPXR1U\B<
M"@.8!<6H:V9),1HL[F\79_7[@M<8X2RF/9+T9I%-!'49@8-],&X9W3#[=CHQ
MBR4T$V.&<2[!Q*=$-,5C;H"E&%.620U68$9$,U)!1^84)J1SP%PB:6PUW))+
M F.,Q0![Q)@03$D)IKHB.":D,F 2:\QQ8V-I)>VXHAU7A..P.[2,N:J\_@&.
M$QBWFEO@.,9XK)T$B_] 8*:.!QPGDH9%96!1YQ3&I 1KNB"26J<LV&9+ @N;
M5H"9/F+,QM;"YKLB,!&Z"#AW:XSI4)HSM-V:MEMCNQD\16.-I\>49L"A"85I
MK<'23S$6VH6 !QQ3EG.X\#,JI7,*5#:G,*-Y#-S&F-/* !>7F*I["O0:4](*
M#EOTBL"TY;"EK#$6=H2YV*Y77AO::X.]EM!J@[MT;#@X%A-,6:TMH*9$K/ID
M Z,QI90S8 %F=$9P^.<492W86@M,:2E@QB6F0FM6\/\TIH0.G03LAA6!22<T
MP-88X]JZBX-V9;.E;;;89@4[>,O8RT0#Y#(%@4!3S+!!#,[5 P59,/<9F0V8
M,B?K!C4MJ'0.MFP*@LOTB"$U8&!V*PS) 7(60V*@_Z=5.]I71_@*+!N[&]9G
M0D+@6$XQ%(R%9Y>"X'&;4>E 27.R)&#^@LKF0*0E!2%?,11\A:T90\%7^*4+
M0\%7^(TKNG@XRWSQUKR&*'LO^?N^JK]Z7XR>WW1\$_7#'1@?\[LE)\8?^=VZ
M?9'Q&;Y]K?)'4KSM]F7O.:_"0V7SW/>:YY4/M;-!:#1;GVS.-ZE_K>I+&ZZ+
M]GU&>U/EA^Y5371^7S3Z#U!+ P04    " !IAUE01SYBNK #  "8$   &@
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
MGS/[F=?EY4:_S4&R[;;?L=M"?^?%]G?GI >NK/<&-SN@S?Z\N[U%%S1O)3Z
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
M,4OU@9<=0P9Q'CK3Y%1^>QH)F*%$8:K'0'/UX^.W/WO4\8'V8.66 VBQB;F
M4+J!",KY?.Q*]]T\#S3J!$)_2X,%<#*-_>RT'=FEKK.[W=98K_"N%L(,!AQG
MK=GQ16,L;.8094.[Z8Y:D: *,.'AT"*D87#JC@P7</OI<9U2AR%]3#+<2GF+
MNS34T(%BQGCO ,E,QA%,89LB:@^\21>/!G/!))TL"I6U51$VIN=#%PTG#9*
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
M5H/G"S$%N1N0+M)5I7MU,9IF$$7L9;&*(L[9PT%L/H[2_5 ^*?)2L_[8V;2
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
MU)PLB)RC/:O4JY[AIF+8Y'7ZPL'%(Q/9ES(V;D[IGQES:70>#KP92M4T9K5
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
MY3Y$%1G=:R'1J<,-I$'"DAVFDCDQ+RN*W-)^CP9U=T@<%9!U0I1(U5M&-0N
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
M6__.;3WZ&OG_4R3/X!ZBE' KC65LQ^Q$H$_-[?=&Q:TT\0;G<Q./L6B!N3'
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
M94H7*C1[=4M"&)&ZV]I.R5P(D8ZG3,5\)7&13D3P[W-LCJQ9B]MT./(['OV
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
M".B7B_2L+TDOM[5**21VY4+#1GPHOS_1YC)D=X+&.PISK/OYBBC7)-FI?$#
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
M8T+(A8$P'^A8NV)G[78'(!,$,ID,<M&W%8!,$<AT0LAO$8#,$,ALNMO-NPV
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
MRS^A;W\#4$L! A0#%     @ :8=94!\CSP/     $P(   L
M ( !     %]R96QS+RYR96QS4$L! A0#%     @ :8=94"?HAPZ"    L0
M !               ( !Z0   &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4
M" !IAUE0XQ*@EN\    K @  $0              @ &9 0  9&]C4')O<',O
M8V]R92YX;6Q02P$"% ,4    " !IAUE0F5R<(Q &  "<)P  $P
M    @ &W @  >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0    ( &F'65 3
MFQIU;P,  ,@0   8              "  ?@(  !X;"]W;W)K<VAE971S+W-H
M965T,2YX;6Q02P$"% ,4    " !IAUE0!\PWT],$  "+%P  &
M    @ &=#   >&PO=V]R:W-H965T<R]S:&5E=#(N>&UL4$L! A0#%     @
M:8=94'T5$R8- @  U04  !@              ( !IA$  'AL+W=O<FMS:&5E
M=',O<VAE970S+GAM;%!+ 0(4 Q0    ( &F'65!AM\U3TP4  +,<   8
M          "  >D3  !X;"]W;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4
M    " !IAUE09)\YDW<)  "'0P  &               @ 'R&0  >&PO=V]R
M:W-H965T<R]S:&5E=#4N>&UL4$L! A0#%     @ :8=94/2H,<KZ 0  )04
M !@              ( !GR,  'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+
M 0(4 Q0    ( &F'65!4G&U#SP8  +(C   8              "  <\E  !X
M;"]W;W)K<VAE971S+W-H965T-RYX;6Q02P$"% ,4    " !IAUE08\L&"K4!
M  #2 P  &               @ '4+   >&PO=V]R:W-H965T<R]S:&5E=#@N
M>&UL4$L! A0#%     @ :8=94(2$5I^V 0  T@,  !@              ( !
MORX  'AL+W=O<FMS:&5E=',O<VAE970Y+GAM;%!+ 0(4 Q0    ( &F'65 '
M<T1KMP$  -(#   9              "  :LP  !X;"]W;W)K<VAE971S+W-H
M965T,3 N>&UL4$L! A0#%     @ :8=94#"AJ1.W 0  T@,  !D
M     ( !F3(  'AL+W=O<FMS:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4
M" !IAUE0U$)8-[4!  #2 P  &0              @ &'-   >&PO=V]R:W-H
M965T<R]S:&5E=#$R+GAM;%!+ 0(4 Q0    ( &F'65#)-J]8MP$  -(#   9
M              "  7,V  !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L!
M A0#%     @ :8=94!-CVAJV 0  T@,  !D              ( !83@  'AL
M+W=O<FMS:&5E=',O<VAE970Q-"YX;6Q02P$"% ,4    " !IAUE0M&<;GK8!
M  #2 P  &0              @ %..@  >&PO=V]R:W-H965T<R]S:&5E=#$U
M+GAM;%!+ 0(4 Q0    ( &F'65#\OLY1MP$  -(#   9              "
M 3L\  !X;"]W;W)K<VAE971S+W-H965T,38N>&UL4$L! A0#%     @ :8=9
M4, .Y FW 0  T@,  !D              ( !*3X  'AL+W=O<FMS:&5E=',O
M<VAE970Q-RYX;6Q02P$"% ,4    " !IAUE0$=AN&[8!  #2 P  &0
M        @ $70   >&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0
M   ( &F'65#B05&[M@$  -(#   9              "  01"  !X;"]W;W)K
M<VAE971S+W-H965T,3DN>&UL4$L! A0#%     @ :8=94#F415ZX 0  T@,
M !D              ( !\4,  'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q0
M2P$"% ,4    " !IAUE04:!$";@!  #2 P  &0              @ '@10
M>&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;%!+ 0(4 Q0    ( &F'65 B.^T8
MM@$  -(#   9              "  <]'  !X;"]W;W)K<VAE971S+W-H965T
M,C(N>&UL4$L! A0#%     @ :8=94-\'W2"W 0  T@,  !D
M ( !O$D  'AL+W=O<FMS:&5E=',O<VAE970R,RYX;6Q02P$"% ,4    " !I
MAUE04.FB*;<!  #2 P  &0              @ &J2P  >&PO=V]R:W-H965T
M<R]S:&5E=#(T+GAM;%!+ 0(4 Q0    ( &F'65 QJW0*M@$  -(#   9
M          "  9A-  !X;"]W;W)K<VAE971S+W-H965T,C4N>&UL4$L! A0#
M%     @ :8=94$3O%+.W 0  T@,  !D              ( !A4\  'AL+W=O
M<FMS:&5E=',O<VAE970R-BYX;6Q02P$"% ,4    " !IAUE0"(J\9K0!  #2
M P  &0              @ %S40  >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM
M;%!+ 0(4 Q0    ( &F'65 ]@:I3MP$  -(#   9              "  5Y3
M  !X;"]W;W)K<VAE971S+W-H965T,C@N>&UL4$L! A0#%     @ :8=94,C'
M95&K @  % L  !D              ( !3%4  'AL+W=O<FMS:&5E=',O<VAE
M970R.2YX;6Q02P$"% ,4    " !IAUE04@L*&K8!  #2 P  &0
M    @ $N6   >&PO=V]R:W-H965T<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    (
M &F'65!H"4#LP@$  #<$   9              "  1M:  !X;"]W;W)K<VAE
M971S+W-H965T,S$N>&UL4$L! A0#%     @ :8=94,%). 2V 0  T@,  !D
M             ( !%%P  'AL+W=O<FMS:&5E=',O<VAE970S,BYX;6Q02P$"
M% ,4    " !IAUE0L(P69+<!  #2 P  &0              @ $!7@  >&PO
M=V]R:W-H965T<R]S:&5E=#,S+GAM;%!+ 0(4 Q0    ( &F'65"UBIJYP@$
M #<$   9              "  >]?  !X;"]W;W)K<VAE971S+W-H965T,S0N
M>&UL4$L! A0#%     @ :8=94$X*D4W3 0  G 0  !D              ( !
MZ&$  'AL+W=O<FMS:&5E=',O<VAE970S-2YX;6Q02P$"% ,4    " !IAUE0
M;)8PGL,!   W!   &0              @ 'R8P  >&PO=V]R:W-H965T<R]S
M:&5E=#,V+GAM;%!+ 0(4 Q0    ( &F'65#XW0B@Q@$  #<$   9
M      "  >QE  !X;"]W;W)K<VAE971S+W-H965T,S<N>&UL4$L! A0#%
M  @ :8=94/SG*W/M 0  9@4  !D              ( !Z6<  'AL+W=O<FMS
M:&5E=',O<VAE970S."YX;6Q02P$"% ,4    " !IAUE0#/;M3<\!  "<!
M&0              @ $-:@  >&PO=V]R:W-H965T<R]S:&5E=#,Y+GAM;%!+
M 0(4 Q0    ( &F'65 "%] OTP$  )P$   9              "  1-L  !X
M;"]W;W)K<VAE971S+W-H965T-# N>&UL4$L! A0#%     @ :8=94.0/40BX
M 0  T@,  !D              ( !'6X  'AL+W=O<FMS:&5E=',O<VAE970T
M,2YX;6Q02P$"% ,4    " !IAUE0=R #>N(!   !!0  &0
M@ $,<   >&PO=V]R:W-H965T<R]S:&5E=#0R+GAM;%!+ 0(4 Q0    ( &F'
M65#@;N\[&P(  +H&   9              "  25R  !X;"]W;W)K<VAE971S
M+W-H965T-#,N>&UL4$L! A0#%     @ :8=94+)LN</. 0  G 0  !D
M         ( !=W0  'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6Q02P$"% ,4
M    " !IAUE0A?%N[[8!  #2 P  &0              @ %\=@  >&PO=V]R
M:W-H965T<R]S:&5E=#0U+GAM;%!+ 0(4 Q0    ( &F'65 62.?-MP$  -(#
M   9              "  6EX  !X;"]W;W)K<VAE971S+W-H965T-#8N>&UL
M4$L! A0#%     @ :8=94*XPRH]: P  ,@X  !D              ( !5WH
M 'AL+W=O<FMS:&5E=',O<VAE970T-RYX;6Q02P$"% ,4    " !IAUE0@;+C
M1+,"  !V#   &0              @ 'H?0  >&PO=V]R:W-H965T<R]S:&5E
M=#0X+GAM;%!+ 0(4 Q0    ( &F'65 "1[<F^ (  .X+   9
M  "  =*   !X;"]W;W)K<VAE971S+W-H965T-#DN>&UL4$L! A0#%     @
M:8=94+G:_@K2 @  NPH  !D              ( ! 80  'AL+W=O<FMS:&5E
M=',O<VAE970U,"YX;6Q02P$"% ,4    " !IAUE0,(\[>IP#  #K#@  &0
M            @ $*AP  >&PO=V]R:W-H965T<R]S:&5E=#4Q+GAM;%!+ 0(4
M Q0    ( &F'65 5&TEV.@(   $(   9              "  =V*  !X;"]W
M;W)K<VAE971S+W-H965T-3(N>&UL4$L! A0#%     @ :8=94)D!;Z'Q @
M'@L  !D              ( !3HT  'AL+W=O<FMS:&5E=',O<VAE970U,RYX
M;6Q02P$"% ,4    " !IAUE0B-S+M\H"  "L"@  &0              @ %V
MD   >&PO=V]R:W-H965T<R]S:&5E=#4T+GAM;%!+ 0(4 Q0    ( &F'65#;
M6/=\ZP$  &<%   9              "  7>3  !X;"]W;W)K<VAE971S+W-H
M965T-34N>&UL4$L! A0#%     @ :8=94!87TIE+ @  %P<  !D
M     ( !F94  'AL+W=O<FMS:&5E=',O<VAE970U-BYX;6Q02P$"% ,4
M" !IAUE0G;LEZ*X$  #"%P  &0              @ $;F   >&PO=V]R:W-H
M965T<R]S:&5E=#4W+GAM;%!+ 0(4 Q0    ( &F'65 HA1K9+ ,  ' ,   9
M              "  0"=  !X;"]W;W)K<VAE971S+W-H965T-3@N>&UL4$L!
M A0#%     @ :8=94)"("7L4 @  " 8  !D              ( !8Z   'AL
M+W=O<FMS:&5E=',O<VAE970U.2YX;6Q02P$"% ,4    " !IAUE0J>-<44L$
M  "T$P  &0              @ &NH@  >&PO=V]R:W-H965T<R]S:&5E=#8P
M+GAM;%!+ 0(4 Q0    ( &F'65!6QF;I'P4  'T8   9              "
M 3"G  !X;"]W;W)K<VAE971S+W-H965T-C$N>&UL4$L! A0#%     @ :8=9
M4(AC(@'C P  #!$  !D              ( !AJP  'AL+W=O<FMS:&5E=',O
M<VAE970V,BYX;6Q02P$"% ,4    " !IAUE0E%C%];P!  #Y P  &0
M        @ &@L   >&PO=V]R:W-H965T<R]S:&5E=#8S+GAM;%!+ 0(4 Q0
M   ( &F'65#.]!]!^ $  #\%   9              "  9.R  !X;"]W;W)K
M<VAE971S+W-H965T-C0N>&UL4$L! A0#%     @ :8=94+^QNS3: @  2 L
M !D              ( !PK0  'AL+W=O<FMS:&5E=',O<VAE970V-2YX;6Q0
M2P$"% ,4    " !IAUE0 /I),4 "  "C!@  &0              @ '3MP
M>&PO=V]R:W-H965T<R]S:&5E=#8V+GAM;%!+ 0(4 Q0    ( &F'65#K1(>Y
MUP,  (\1   9              "  4JZ  !X;"]W;W)K<VAE971S+W-H965T
M-C<N>&UL4$L! A0#%     @ :8=94+32W"9#!   J10  !D
M ( !6+X  'AL+W=O<FMS:&5E=',O<VAE970V."YX;6Q02P$"% ,4    " !I
MAUE01'78G5 "  !0!P  &0              @ '2P@  >&PO=V]R:W-H965T
M<R]S:&5E=#8Y+GAM;%!+ 0(4 Q0    ( &F'65"Z_(G'Z0$  ,<$   9
M          "  5G%  !X;"]W;W)K<VAE971S+W-H965T-S N>&UL4$L! A0#
M%     @ :8=94)'74HY' P  .@T  !D              ( !><<  'AL+W=O
M<FMS:&5E=',O<VAE970W,2YX;6Q02P$"% ,4    " !IAUE0Q=,LX"X"  !7
M!@  &0              @ 'WR@  >&PO=V]R:W-H965T<R]S:&5E=#<R+GAM
M;%!+ 0(4 Q0    ( &F'65!#]LADM $  $8$   9              "  5S-
M  !X;"]W;W)K<VAE971S+W-H965T-S,N>&UL4$L! A0#%     @ :8=94$#5
M):S* @  Q H  !D              ( !1\\  'AL+W=O<FMS:&5E=',O<VAE
M970W-"YX;6Q02P$"% ,4    " !IAUE0RZ[/&2P"  !Q!@  &0
M    @ %(T@  >&PO=V]R:W-H965T<R]S:&5E=#<U+GAM;%!+ 0(4 Q0    (
M &F'65!^BBG@X@$  /8%   9              "  :O4  !X;"]W;W)K<VAE
M971S+W-H965T-S8N>&UL4$L! A0#%     @ :8=94.9UX%G[ @  ] H  !D
M             ( !Q-8  'AL+W=O<FMS:&5E=',O<VAE970W-RYX;6Q02P$"
M% ,4    " !IAUE0 8A& ) !   ; P  &0              @ 'VV0  >&PO
M=V]R:W-H965T<R]S:&5E=#<X+GAM;%!+ 0(4 Q0    ( &F'65"*V]-Z# (
M &P&   9              "  ;W;  !X;"]W;W)K<VAE971S+W-H965T-SDN
M>&UL4$L! A0#%     @ :8=94+BZ5!97 @  E@<  !D              ( !
M -X  'AL+W=O<FMS:&5E=',O<VAE970X,"YX;6Q02P$"% ,4    " !IAUE0
M_[M@K@0%  !S&@  &0              @ &.X   >&PO=V]R:W-H965T<R]S
M:&5E=#@Q+GAM;%!+ 0(4 Q0    ( &F'65 ]4%G&Z0$  "P%   9
M      "  <GE  !X;"]W;W)K<VAE971S+W-H965T.#(N>&UL4$L! A0#%
M  @ :8=94*URDV.P @  00D  !D              ( !Z><  'AL+W=O<FMS
M:&5E=',O<VAE970X,RYX;6Q02P$"% ,4    " !IAUE0:L0=G^0!   5!0
M&0              @ '0Z@  >&PO=V]R:W-H965T<R]S:&5E=#@T+GAM;%!+
M 0(4 Q0    ( &F'65#QE,LUE0(  /D(   9              "  >OL  !X
M;"]W;W)K<VAE971S+W-H965T.#4N>&UL4$L! A0#%     @ :8=94)?HJD#O
M 0  W@0  !D              ( !M^\  'AL+W=O<FMS:&5E=',O<VAE970X
M-BYX;6Q02P$"% ,4    " !IAUE0F<6.DO4#   H$0  &0
M@ '=\0  >&PO=V]R:W-H965T<R]S:&5E=#@W+GAM;%!+ 0(4 Q0    ( &F'
M65!^O=+GC@(  '4(   9              "  0GV  !X;"]W;W)K<VAE971S
M+W-H965T.#@N>&UL4$L! A0#%     @ :8=94*BY@*8) P  >@L  !D
M         ( !SO@  'AL+W=O<FMS:&5E=',O<VAE970X.2YX;6Q02P$"% ,4
M    " !IAUE00^E4C 0#  #J"P  &0              @ $._   >&PO=V]R
M:W-H965T<R]S:&5E=#DP+GAM;%!+ 0(4 Q0    ( &F'65"M/3.L0@(  -$&
M   9              "  4G_  !X;"]W;W)K<VAE971S+W-H965T.3$N>&UL
M4$L! A0#%     @ :8=94)M2SNG0 @  5@L  !D              ( !P@$!
M 'AL+W=O<FMS:&5E=',O<VAE970Y,BYX;6Q02P$"% ,4    " !IAUE0P' $
MQ4@#   &#@  &0              @ ')! $ >&PO=V]R:W-H965T<R]S:&5E
M=#DS+GAM;%!+ 0(4 Q0    ( &F'65#=?%E2(@,  *8,   9
M  "  4@( 0!X;"]W;W)K<VAE971S+W-H965T.30N>&UL4$L! A0#%     @
M:8=94-'JZ5*, 0  & ,  !D              ( !H0L! 'AL+W=O<FMS:&5E
M=',O<VAE970Y-2YX;6Q02P$"% ,4    " !IAUE0NZO*&5P"  !8!P  &0
M            @ %D#0$ >&PO=V]R:W-H965T<R]S:&5E=#DV+GAM;%!+ 0(4
M Q0    ( &F'65#2N #R] $  $<%   9              "  ?</ 0!X;"]W
M;W)K<VAE971S+W-H965T.3<N>&UL4$L! A0#%     @ :8=94&5\LCS\ @
M"PX  !D              ( !(A(! 'AL+W=O<FMS:&5E=',O<VAE970Y."YX
M;6Q02P$"% ,4    " !IAUE0'04$8'("  " "0  &0              @ %5
M%0$ >&PO=V]R:W-H965T<R]S:&5E=#DY+GAM;%!+ 0(4 Q0    ( &F'65#%
M;!#,3@(  )P'   :              "  ?X7 0!X;"]W;W)K<VAE971S+W-H
M965T,3 P+GAM;%!+ 0(4 Q0    ( &F'65#<>-?IQP0  "P8   :
M      "  80: 0!X;"]W;W)K<VAE971S+W-H965T,3 Q+GAM;%!+ 0(4 Q0
M   ( &F'65"VS=1_0@(  %T'   :              "  8,? 0!X;"]W;W)K
M<VAE971S+W-H965T,3 R+GAM;%!+ 0(4 Q0    ( &F'65"$'>E"F ,  "4/
M   :              "  ?TA 0!X;"]W;W)K<VAE971S+W-H965T,3 S+GAM
M;%!+ 0(4 Q0    ( &F'65!0XQ,3  ,  !4+   :              "  <TE
M 0!X;"]W;W)K<VAE971S+W-H965T,3 T+GAM;%!+ 0(4 Q0    ( &F'65!T
MU$VMJ $  ),#   :              "  04I 0!X;"]W;W)K<VAE971S+W-H
M965T,3 U+GAM;%!+ 0(4 Q0    ( &F'65"J:53S+ 0  #L2   :
M      "  >4J 0!X;"]W;W)K<VAE971S+W-H965T,3 V+GAM;%!+ 0(4 Q0
M   ( &F'65!'/F*ZL ,  )@0   :              "  4DO 0!X;"]W;W)K
M<VAE971S+W-H965T,3 W+GAM;%!+ 0(4 Q0    ( &F'65"$ZNR>+(8  -@9
M @ 4              "  3$S 0!X;"]S:&%R9613=')I;F=S+GAM;%!+ 0(4
M Q0    ( &F'65![3BMF/@(  'P*   -              "  8^Y 0!X;"]S
M='EL97,N>&UL4$L! A0#%     @ :8=94-9\T]9"!P  $4<   \
M     ( !^+L! 'AL+W=O<FMB;V]K+GAM;%!+ 0(4 Q0    ( &F'65">K0Q<
M'P,  &D_   :              "  6?# 0!X;"]?<F5L<R]W;W)K8F]O:RYX
M;6PN<F5L<U!+ 0(4 Q0    ( &F'65 SD(N*>0(  !$]   3
M  "  ;[& 0!;0V]N=&5N=%]4>7!E<UTN>&UL4$L%!@    !T '0 YA\  &C)
$ 0    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842520080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Leases (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Jan. 01, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesRentExpenseNet', window );">Operating Leases, Rent Expense, Net, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,739<span></span>
</td>
<td class="nump">$ 10,845<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member', window );">Accounting Standards Update 2016-02 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating Lease, Right-of-Use Asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 42,024<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating Lease, Liability, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">42,056<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption', window );">Cumulative Effect of New Accounting Principle in Period of Adoption</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract', window );">Lessee, Operating Lease and Finance Lease, Remaining Term of Contract</a></td>
<td class="text">20 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Lessee, Operating Lease, Renewal Term</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Remaining term of lessee's operating lease and finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) to equity or (increase) decrease to net assets, resulting from the cumulative effect adjustment of a new accounting principle applied in the period of adoption.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918673-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseRenewalTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasesRentExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41499-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesRentExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R99.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6856079968">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 61,870<span></span>
</td>
<td class="nump">$ 58,014<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Fair Value, Inputs, Level 1 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51,736<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Fair Value, Inputs, Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,134<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_MutualFundMember', window );">Mutual Fund [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51,736<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_MutualFundMember', window );">Mutual Fund [Member] | Fair Value, Inputs, Level 1 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51,736<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_MutualFundMember', window );">Mutual Fund [Member] | Fair Value, Inputs, Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember', window );">Other Investment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,134<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember', window );">Other Investment [Member] | Fair Value, Inputs, Level 1 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember', window );">Other Investment [Member] | Fair Value, Inputs, Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,134<span></span>
</td>
<td class="nump">$ 9,700<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanFairValueOfPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_MutualFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_MutualFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858667312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 20 - Valuation and Qualifying Accounts (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ValuationAndQualifyingAccountsTableTextBlock', window );">Valuation and Qualifying Accounts [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Balance at Beginning of Year</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Additions Charged to Earnings</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Charges to Reserve, Net (1)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Reserves Established for Acquisitions</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Balance at End of Year</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2019</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,873</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,086</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,033</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,968</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,140</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,821</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,867</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">199</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24,293</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(778</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,024</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2018</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,941</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,123</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,873</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,987</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,004</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,720</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">869</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,140</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,817</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">478</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,493</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2017</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,642</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">346</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,842</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">659</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,031</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,164</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,036</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">828</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,987</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,362</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,455</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,817</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ValuationAndQualifyingAccountsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A tabular disclosure of allowance and reserve accounts including their beginning and ending balances, as well as a reconciliation by type of activity during the period. Alternatively, disclosure of the required information may be within the footnotes to the financial statements or a supplemental schedule to the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ValuationAndQualifyingAccountsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847718912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Current:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Federal</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41,686</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,072</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,753</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">State</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,211</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,639</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,775</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,660</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,546</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,585</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">48,557</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,113</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Federal</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,393</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,225</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,213</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">State</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,390</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,910</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,139</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,263</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">479</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,777</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,520</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24,614</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,575</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Change in valuation allowance</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(778</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,015</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,454</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">67,299</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">69,856</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">44,142</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred tax assets:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Accrued expenses</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,053</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,745</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred revenue</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,697</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,418</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Inventories</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,879</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,500</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Pension obligations</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,062</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Stock-based compensation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,490</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,960</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Operating loss and credit carryforwards</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,356</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,585</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Bad debt</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,094</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,363</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,275</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,516</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Valuation allowance</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,024</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">81,820</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">68,347</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred tax liabilities:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Goodwill and intangible assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">142,159</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">108,899</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Depreciation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">27,864</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,429</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Debt refinancing costs</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,119</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,206</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Prepaid expenses</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,073</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">950</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total deferred tax liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">175,215</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">139,484</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net deferred tax liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(93,395</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(71,137</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Unrecognized tax benefit, beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,635</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,122</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Increase in unrecognized tax benefit for positions taken in prior period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">633</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Increase in unrecognized tax benefit for positions taken in current period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">495</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">580</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Statute of limitation expirations</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(43</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,818</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Settlements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(249</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Unrecognized tax benefit, end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">6,720</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,635</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">U.S. statutory rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.7</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.1</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State tax rate differential</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Research and development credits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.8</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.4</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State credits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.2</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Share-based compensation (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.6</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.4</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Tax Act impact (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.2</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(13.9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(0.8</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(0.2</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(0.9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Effective tax rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">21.1</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">22.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">21.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the change in unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI http://asc.fasb.org/extlink&amp;oid=117331294&amp;loc=d3e36027-109320<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847557600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">Pension and Other Postretirement Benefits Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">16.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Benefit Plans</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Medical and Dental Plan</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains medical and dental benefit plans covering its full-time domestic employees and their dependents. Certain plans are partially or fully self-funded under which participant claims are obligations of the plan. These plans are funded through employer and employee contributions at a level sufficient to pay for the benefits provided by the plan. The Company&#8217;s contributions to the plans were $18,290, $14,660, and $14,992 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s foreign subsidiaries participate in government sponsored medical benefit plans. In certain cases, the Company purchases supplemental medical coverage for certain employees at these foreign locations. The expenses related to these plans are <em style="font-weight: inherit; font-style: normal;">not</em> material to the Company&#8217;s consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Savings Plan</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains a defined-contribution <em style="font-weight: inherit; font-style: normal;">401</em>(k) savings plan for eligible domestic employees. Under the plan, employees <em style="font-weight: inherit; font-style: normal;"> may </em>defer receipt of a portion of their eligible compensation. The Company <em style="font-weight: inherit; font-style: normal;"> may </em>contribute a matching contribution of 50% of the <em style="font-weight: inherit; font-style: normal;">first</em> 6% of eligible compensation of employees. The Company <em style="font-weight: inherit; font-style: normal;"> may </em>also contribute a non-elective contribution for eligible employees employed on <em style="font-weight: inherit; font-style: normal;"> December 31, 2008 </em>that were impacted by the freezing of the Company&#8217;s pension plans. The Company&#8217;s matching contributions are subject to vesting. Forfeitures <em style="font-weight: inherit; font-style: normal;"> may </em>be applied against plan expenses and company contributions. The Company recognized $4,791, $4,193 and $3,600 of expense related to these plans in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Pension Plans</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Historically, the Company maintained frozen noncontributory salaried and hourly pension plans (Pension Plans) covering certain domestic employees. The Pension Plans were frozen effective <em style="font-weight: inherit; font-style: normal;"> December 31, 2008. </em>Effective <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>the Pension Plans were merged into the same plan (Pension Plan), resulting in <em style="font-weight: inherit; font-style: normal;">no</em> change to benefits for participants. The benefits under the salaried plan were based upon years of service and the participants&#8217; defined final average monthly compensation. The benefits under the hourly plan were based on a unit amount at the date of termination multiplied by the participant&#8217;s years of credited service.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;">2019,</em> the Company completed the termination of its Pension Plan. &#160;In connection with the Company&#8217;s activities to terminate the plan, lump sum distributions were made in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019</em> to individuals who elected lump sum distributions, including rolling over their accounts to the Company&#8217;s <em style="font-weight: inherit; font-style: normal;">401</em>(k) savings plan. Also in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> annuity contracts were purchased to settle obligations for the remaining participants.&#160;Upon settlement of the pension liability, the Company reclassified related unrecognized pension losses recorded in&#160;AOCL to the consolidated statements of comprehensive income. As a result, the Company recorded pre-tax settlement charges of $10,920 in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s historical funding policy for the Pension Plans was to contribute amounts at least equal to the minimum annual amount required by applicable regulations. In the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>the Company made a voluntary pension prepayment of $9,400. In the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company made required contributions of $1,017 in connection with the plan termination. <em style="font-weight: inherit; font-style: normal;">No</em> additional contributions will be required in future years as the pension plan termination was finalized in <em style="font-weight: inherit; font-style: normal;">2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table provides a reconciliation of benefit obligations, plan assets and funded status of the Pension Plan based on a <em style="font-weight: inherit; font-style: normal;"> December 31 </em>measurement date:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accumulated benefit obligation at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">65,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Change in projected benefit obligation</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Projected benefit obligation at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">65,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">72,631</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,401</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,575</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net actuarial (gain) loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,452</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(6,820</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Benefits paid</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(31,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Annuities purchased</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(40,510</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Projected benefit obligation at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">65,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Change in plan assets</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fair value of plan assets at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">58,014</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Actual return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,944</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,507</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Company contributions</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,017</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,771</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Benefits paid</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(31,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Annuities purchased</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(40,510</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fair value of plan assets at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Funded status: accrued pension liability included in other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(4,108</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Amounts recognized in accumulated other comprehensive loss</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net actuarial loss, net of tax</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The actuarial loss for the Pension Plan that was amortized from AOCL into net periodic pension cost during <em style="font-weight: inherit; font-style: normal;">2019</em> prior to the pension plan termination was $843.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The actuarial assumption used in the determination of the benefit obligation of the above data is:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average discount rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.24%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table sets forth the components of net periodic pension cost (benefit) for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017:</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 55%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,401</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,575</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,688</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expected return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,500</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,525</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,011</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of net loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">843</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">883</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,920</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net periodic pension cost (benefit)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,664</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(148</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">560</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Weighted-average assumptions used to determine net periodic pension cost (benefit) are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Discount Rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.24%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">3.60%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.14%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expected long-term rate of return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">6.60%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">6.19%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">6.58%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Rate of compensation increase (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="margin: 0pt;">&#160;</p>
   <table cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt; margin-left: 0pt; margin-right: 0pt;">
    <tbody>
     <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt;">
      <td colspan="1" style="vertical-align: middle; width: 100%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 9pt; margin: 0pt; text-align: left;">(<em style="font-weight: inherit; font-style: normal;">1</em>)&#160; <em style="font-weight: inherit; font-style: normal;">No</em> compensation increase was assumed as the Pension Plan was frozen effective <em style="font-weight: inherit; font-style: normal;"> December 31, 2008.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">To determine the long-term rate of return assumption for the plans&#8217; assets, the Company studied historical markets and preserved the long-term historical relationship between equities and fixed-income securities consistent with the widely accepted capital market principle that assets with higher volatility generate a greater return over the long run. The Company evaluated current market factors such as inflation and interest rates before it determined long-term capital market assumptions and reviewed peer data and historical returns to check for reasonableness and appropriateness.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The fair value of the qualified pension plan assets was $0 at <em style="font-weight: inherit; font-style: normal;"> December&#160;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2019</em> and $61,870 at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>The Pension Plan&#8217;s weighted-average asset allocation at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>by asset category, is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Target Allocation</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Asset Category</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Minimum</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Maximum</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Dollars</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>%</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fixed income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic equity</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,731</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International equity</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,380</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Real estate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">6,502</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">100</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The fair values of the Pension Plans&#8217; assets at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>were as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quoted Prices in Active Markets for Identical Asset</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 1)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Significant Observable Inputs</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 2)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Significant Unobservable Inputs</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 3)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Mutual funds</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51,736</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51,736</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#8211;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#8211;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Other investments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#8211;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#8211;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt; margin-left: 27pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">51,736</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#8211;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A reconciliation of beginning and ending balances for Level <em style="font-weight: inherit; font-style: normal;">3</em> assets for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>201</b><b>8</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,700</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Purchases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redemptions</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,795</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Realized gains</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">424</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#160;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Mutual Funds</i></b> &#8211; This category includes investments in mutual funds that encompass both equity and fixed income securities that are designed to provide a diverse portfolio. The plans&#8217; mutual funds are designed to track exchange indices, and invest in diverse industries. Some mutual funds are classified as regulated investment companies. Investment managers have the ability to shift investments from value to growth strategies, from small to large capitalization funds, and from U.S. to international investments. These investments are valued at the closing price reported on the active market on which the individual securities are traded. These investments are classified within Level <em style="font-weight: inherit; font-style: normal;">1</em> of the fair value hierarchy.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Other Investments</i></b> &#8211; This category includes investments in limited partnerships and are valued at estimated fair value, as determined with the assistance of each respective limited partnership, based on the net asset value of the investment as of the balance sheet date, which is subject to judgment, and therefore is classified within Level <em style="font-weight: inherit; font-style: normal;">3</em> of the fair value hierarchy.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s historical target allocation for equity securities and real estate was generally between 75% to 85%, with the remainder allocated primarily to fixed income (bonds). The Company regularly reviewed its actual asset allocation and periodically rebalanced its investments to the targeted allocation when considered appropriate.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Certain of the Company&#8217;s foreign subsidiaries participate in local statutory defined benefit or other post-employment benefit plans. These plans provide benefits that are generally based on years of credited service and a percentage of the employee&#8217;s eligible compensation earned throughout the applicable service period. Liabilities recorded under these plans are included in other long-term liabilities in the Company&#8217;s consolidated balance sheets and are <em style="font-weight: inherit; font-style: normal;">not</em> material.</p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for pension and other postretirement benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847642976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 20 - Valuation and Qualifying Accounts<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock', window );">SEC Schedule, 12-09, Schedule of Valuation and Qualifying Accounts Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">20.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Valuation and Qualifying Accounts</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017:</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Balance at Beginning of Year</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Additions Charged to Earnings</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Charges to Reserve, Net (1)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Reserves Established for Acquisitions</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Balance at End of Year</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2019</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,873</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,086</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,033</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,968</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,140</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,821</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,867</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">199</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24,293</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(778</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,024</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2018</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,941</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,123</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">250</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,873</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,987</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,004</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,720</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">869</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,140</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,817</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">478</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,493</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Year ended December 31, 2017</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Allowance for doubtful accounts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,642</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">346</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,842</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">659</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Reserves for inventory</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,031</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,164</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,036</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">828</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,987</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Valuation of deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,362</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,455</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,817</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Deductions from the allowance for doubtful accounts equal accounts receivable written off against the allowance, less recoveries. Deductions from the reserves for inventory excess and obsolete items equal inventory written off against the reserve as items were disposed of.</p> </td>
     </tr>
    </tbody>
   </table>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-X (SX)<br> -Number 210<br> -Section 12<br> -Subsection 09<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6841935872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Balance Sheet Details (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory, Current [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Raw material</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">328,021</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">348,980</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Work-in-process</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,387</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,971</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">183,616</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">188,799</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">522,024</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">544,750</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Land and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,252</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,975</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">177,079</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">163,161</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">117,114</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">103,726</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,040</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,198</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,955</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,070</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">99,124</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">82,638</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,293</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,137</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Construction in progress</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,299</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">26,543</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gross property and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">478,156</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">424,448</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accumulated depreciation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(161,180</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(145,519</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">316,976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">278,929</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847777520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Redeemable Noncontrolling Interest (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RedeemableNoncontrollingInterestTableTextBlock', window );">Redeemable Noncontrolling Interest [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 33%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31,</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2018</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2017</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,004</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43,929</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,138</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Noncontrolling interest</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,165</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(1)</em></sup>&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,540</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(2)</em></sup></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,214</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,631</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,764</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,109</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,529</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Redemption value adjustment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,253</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17,970</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,227</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,004</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">43,929</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RedeemableNoncontrollingInterestTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of redeemable noncontrolling interest (as defined) included in the statement of financial position as either a liability or temporary equity. As of the date of the statement of financial position, such redeemable noncontrolling interest is currently redeemable, as defined, for cash or other assets of the entity at (1) at a fixed or determinable price on a fixed or determinable date, (2) at the option of the holder of the noncontrolling interest, or (3) upon occurrence of an event that is not solely within the control of the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RedeemableNoncontrollingInterestTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847664432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Redeemable Noncontrolling Interest<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_RedeemableNoncontrollingInterestTextBlock', window );">Redeemable Noncontrolling Interest [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">4.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Redeemable Noncontrolling Interest</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> March 1, 2016, </em>the Company acquired a 65% ownership interest in PR Industrial S.r.l. and its subsidiaries (Pramac). The 35% noncontrolling interest in Pramac had an acquisition date fair value of $34,253, and was recorded as a redeemable noncontrolling interest in the consolidated balance sheet, as the noncontrolling interest holder had within its control the right to require the Company to redeem its interest in Pramac. In <em style="font-weight: inherit; font-style: normal;"> February 2019, </em>the Company amended its agreement with the noncontrolling interest holder of Pramac, extending the agreement by <span style="-sec-ix-hidden:c56031712">five</span> years, allowing the Company to exercise its call option rights in partial increments at certain times during the <em style="font-weight: inherit; font-style: normal;">five</em> year period, and providing that the noncontrolling interest holder <em style="font-weight: inherit; font-style: normal;">no</em> longer holds the right to put its shares to the Company until <em style="font-weight: inherit; font-style: normal;"> April 1, 2021.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> February 1, 2019, </em>the Company acquired a 51% ownership interest in Captiva Energy Solutions, Ltd (Captiva). The 49% noncontrolling interest in Captiva has an acquisition date fair value of $3,165, and was recorded as a redeemable noncontrolling interest in the consolidated balance sheet, as the noncontrolling interest holder had within its control the right to require the Company to redeem its interest in Captiva. The noncontrolling interest holder has a put option to sell his interest to the Company any time after <span style="-sec-ix-hidden:c56031719">five</span> years from the date of acquisition, or earlier upon the occurrence of certain circumstances. The put option price is based on a multiple of earnings, subject to the terms of the acquisition. Further, the Company has a call option that it <em style="font-weight: inherit; font-style: normal;"> may </em>redeem any time after <span style="-sec-ix-hidden:c56031720">five</span> years from the date of acquisition, or earlier upon the occurrence of certain circumstances. The call option price is based on a multiple of earnings, subject to the terms of the acquisition.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For both transactions, the redeemable noncontrolling interest is recorded at the greater of the initial fair value, increased or decreased for the noncontrolling interests&#8217; share of comprehensive income (loss), or the estimated redemption value, with any adjustments to the redemption value impacting retained earnings, but <em style="font-weight: inherit; font-style: normal;">not</em> net income. However, the redemption value adjustments are reflected in the earnings per share calculation, as detailed in Note <em style="font-weight: inherit; font-style: normal;">14,</em> &#8220;Earnings Per Share,&#8221; to the consolidated financial statements. The following table presents the changes in the redeemable noncontrolling interest:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 33%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31,</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2018</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>2017</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,004</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43,929</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,138</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Noncontrolling interest</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,165</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(1)</em></sup>&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,540</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(2)</em></sup></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,214</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,631</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,764</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,109</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,529</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Redemption value adjustment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,253</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17,970</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 51%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,227</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,004</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">43,929</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
      </tr>
     </tbody>
    </table>

   <p style="margin: 0pt;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
    <tbody>
     <tr>
      <td colspan="1" style="vertical-align:top;width:96.5%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">(<em style="font-weight: inherit; font-style: normal;">1</em>) Represents the noncontrolling interest of Captiva Energy calculated at the date of acquisition, <em style="font-weight: inherit; font-style: normal;"> February 1, 2019.</em></p> </td>
     </tr>
     <tr>
      <td colspan="1" style="vertical-align:top;width:96.5%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">(<em style="font-weight: inherit; font-style: normal;">2</em>) Represents the additional noncontrolling interest of Pramac resulting from a common control transaction between Generac Mobile Products S.r.l. and Pramac UK Limited legal entities.</p> </td>
     </tr>
    </tbody>
   </table>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_RedeemableNoncontrollingInterestTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Entire disclosure for redeemable noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_RedeemableNoncontrollingInterestTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858638928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Balance Sheet Details<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock', window );">Supplemental Balance Sheet Disclosures [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">8.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Balance Sheet Details</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Inventories consist of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Raw material</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">328,021</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">348,980</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Work-in-process</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,387</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,971</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">183,616</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">188,799</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">522,024</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">544,750</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> inventories totaling $18,684 and $8,488, respectively, were on consignment at customer locations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Property and equipment consists of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Land and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,252</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,975</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">177,079</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">163,161</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">117,114</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">103,726</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,040</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,198</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,955</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,070</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">99,124</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">82,638</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,293</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,137</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Construction in progress</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,299</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">26,543</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gross property and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">478,156</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">424,448</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accumulated depreciation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(161,180</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(145,519</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">316,976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">278,929</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total property and equipment included finance leases of $20,158 at <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>primarily made up of buildings and improvements. Amortization of finance lease right of use assets&#160;is recorded within depreciation expense in the consolidated statements of comprehensive income. The initial measurement of new finance lease right of use assets&#160;is accounted for as a non-cash item in the consolidated statement of cash flows. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#8220;Leases,&#8221; for further information regarding the Company&#8217;s accounting for leases under ASC <em style="font-weight: inherit; font-style: normal;">842,</em> <i>Leases,</i> in <em style="font-weight: inherit; font-style: normal;">2019.</em></p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -URI http://asc.fasb.org/topic&amp;trid=2122208<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalBalanceSheetDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R105.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6835694560">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 18 - Commitments and Contingencies (Details Textual) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AmountFinancedByDealers', window );">Amount Financed by Dealers</a></td>
<td class="nump">$ 49.6<span></span>
</td>
<td class="nump">$ 47.2<span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_AmountFinancedByDealers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount financed by dealers to purchase goods from the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_AmountFinancedByDealers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R101.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838794144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Share Plans (Details Textual) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Jun. 13, 2019</div></th>
<th class="th"><div>Feb. 10, 2010</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,100,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</a></td>
<td class="nump">$ 52.07<span></span>
</td>
<td class="nump">$ 43.88<span></span>
</td>
<td class="nump">$ 40.13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from Stock Options Exercised</a></td>
<td class="nump">$ 9,395<span></span>
</td>
<td class="nump">$ 5,614<span></span>
</td>
<td class="nump">$ 6,951<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment, Tax Withholding, Share-based Payment Arrangement</a></td>
<td class="nump">$ 6,438<span></span>
</td>
<td class="nump">$ 5,659<span></span>
</td>
<td class="nump">$ 5,892<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_BoardOfDirectorsChairmanMember', window );">Board of Directors Chairman [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued', window );">Deferred Compensation Arrangement with Individual, Shares Issued</a></td>
<td class="nump">22,544<span></span>
</td>
<td class="nump">33,419<span></span>
</td>
<td class="nump">34,095<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCompensationArrangementWithIndividualSharesVested', window );">Deferred Compensation Arrangement with Individual, Shares Vested</a></td>
<td class="nump">22,544<span></span>
</td>
<td class="nump">33,419<span></span>
</td>
<td class="nump">22,762<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCompensationArrangementWithIndividualSharesGranted', window );">Deferred Compensation Arrangement with Individual, Shares Granted</a></td>
<td class="nump">16,604<span></span>
</td>
<td class="nump">22,675<span></span>
</td>
<td class="nump">11,333<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense', window );">Deferred Compensation Arrangement with Individual, Compensation Expense</a></td>
<td class="nump">$ 1,391<span></span>
</td>
<td class="nump">$ 1,718<span></span>
</td>
<td class="nump">$ 1,133<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Share-based Payment Arrangement, Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 5,597<span></span>
</td>
<td class="nump">$ 4,998<span></span>
</td>
<td class="nump">$ 4,503<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</a></td>
<td class="nump">32,211<span></span>
</td>
<td class="nump">63,817<span></span>
</td>
<td class="nump">9,033<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from Stock Options Exercised</a></td>
<td class="nump">$ 9,395<span></span>
</td>
<td class="nump">$ 5,614<span></span>
</td>
<td class="nump">$ 6,951<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment, Tax Withholding, Share-based Payment Arrangement</a></td>
<td class="nump">3,360<span></span>
</td>
<td class="nump">$ 3,846<span></span>
</td>
<td class="nump">$ 4,301<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</a></td>
<td class="nump">$ 10,649<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</a></td>
<td class="text">2 years 6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</a></td>
<td class="nump">55,953<span></span>
</td>
<td class="nump">38,186<span></span>
</td>
<td class="nump">39,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment, Tax Withholding, Share-based Payment Arrangement</a></td>
<td class="nump">$ 3,078<span></span>
</td>
<td class="nump">$ 1,812<span></span>
</td>
<td class="nump">$ 1,591<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</a></td>
<td class="nump">$ 16,165<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</a></td>
<td class="text">1 year 10 months 24 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Shares [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Performance Measurement, Period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gnrc_RestrictedStockAndPerformanceSharesMember', window );">Restricted Stock and Performance Shares [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 11,097<span></span>
</td>
<td class="nump">$ 9,565<span></span>
</td>
<td class="nump">$ 5,702<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</a></td>
<td class="nump">$ 52.07<span></span>
</td>
<td class="nump">$ 43.88<span></span>
</td>
<td class="nump">$ 40.12<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_PerformanceShareAwardPercentage', window );">Performance Share Award, Percentage</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 45.29<span></span>
</td>
<td class="nump">$ 48.98<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_PerformanceShareAwardPercentage', window );">Performance Share Award, Percentage</a></td>
<td class="nump">200.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PlanNameAxis=gnrc_EquityIncentivePlanPlanMember', window );">Equity Incentive Plan (Plan) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 15,738<span></span>
</td>
<td class="nump">$ 14,563<span></span>
</td>
<td class="nump">$ 10,205<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PlanNameAxis=gnrc_The2019EquityIncentivePlanMember', window );">The 2019 Equity Incentive Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 956<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCompensationArrangementWithIndividualSharesGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares granted in a deferred compensation arrangement with an individual.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCompensationArrangementWithIndividualSharesGranted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCompensationArrangementWithIndividualSharesVested">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares vested during the period pursuant to the terms of a deferred compensation arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCompensationArrangementWithIndividualSharesVested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_PerformanceShareAwardPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The percentage of the target performance share award.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_PerformanceShareAwardPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period of performance measurement for share-based compensation awards, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The compensation expense recognized during the period pertaining to the deferred compensation arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -SubTopic 10<br> -Section 30<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6409875&amp;loc=d3e20015-108363<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued pursuant to the terms of a deferred compensation arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=SL79508275-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_BoardOfDirectorsChairmanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=srt_BoardOfDirectorsChairmanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=gnrc_RestrictedStockAndPerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=gnrc_RestrictedStockAndPerformanceSharesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=gnrc_EquityIncentivePlanPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=gnrc_EquityIncentivePlanPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=gnrc_The2019EquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=gnrc_The2019EquityIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847736336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Credit Agreements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">12.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Credit Agreements</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Short-term borrowings are included in the consolidated balance sheets as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ABL facility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,961</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,459</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other lines of credit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">27,753</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">27,124</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">58,714</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">45,583</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">Long-term borrowings are included in the consolidated balance sheets as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Term loan</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">830,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">879,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Original issue discount and deferred financing costs</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(18,048</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(22,440</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ABL facility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease obligation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,171</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,236</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,642</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">840,150</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">878,373</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Less: current portion of debt</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">553</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,075</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Less: current portion of finance lease obligation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,830</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">902</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">837,767</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">876,396</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Maturities of long-term borrowings outstanding at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>excluding finance lease obligations as their maturities are disclosed in Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#8220;Leases,&#8221; and before considering original issue discount and deferred financing costs, are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">553</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,683</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">830,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">832,236</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s credit agreements originally provided for a $1,200,000 term loan B credit facility (Term Loan) and currently include a $300,000 uncommitted incremental term loan facility. The maturity date of the Term Loan is currently <em style="font-weight: inherit; font-style: normal;"> December 13, 2026. </em>The Term Loan is guaranteed by all of the Company&#8217;s wholly-owned domestic restricted subsidiaries, and is secured by associated collateral agreements which pledge a <em style="font-weight: inherit; font-style: normal;">first</em> priority lien on virtually all of the Company&#8217;s assets, including fixed assets and intangibles, other than all cash, trade accounts receivable, inventory, and other current assets and proceeds thereof, which are secured by a <em style="font-weight: inherit; font-style: normal;">second</em> priority lien. The Term Loan initially bore interest at rates based upon either a base rate plus an applicable margin of 1.75% or adjusted LIBOR rate plus an applicable margin of 2.75%, subject to a LIBOR floor of 0.75%. Beginning in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2014,</em> and measured each quarterly period thereafter, the applicable margin related to base rate loans was reduced to 1.50% and the applicable margin related to LIBOR rate loans was reduced to 2.50%, in each case, if the Company&#8217;s net debt leverage ratio, as defined in the Term Loan, fell below 3.00 to <em style="font-weight: inherit; font-style: normal;">1.00</em> for that measurement period.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> May 2017, </em>the Company amended its Term Loan, modifying the pricing of the facility by reducing the applicable margin rates to base rate plus a fixed applicable margin of 1.25% or adjusted LIBOR rate plus a fixed applicable margin of 2.25%. Further, the amendment removed the pricing grid that would reduce the applicable margin if a net debt leverage ratio of 3.00 to <em style="font-weight: inherit; font-style: normal;">1.00</em> was achieved. As a result, the Company does <em style="font-weight: inherit; font-style: normal;">not</em> anticipate any future catch-up gains or losses resulting from changes in contractual interest rates to be recorded in the statements of comprehensive income. At the time, the amended Term Loan pricing was still subject to the 0.75% LIBOR floor. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> <i>Debt Modifications and Extinguishments</i>, the Company capitalized $1,432 of fees paid to creditors as deferred financing costs on long-term borrowings and expensed $85 of transaction fees in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2017.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> December 2017, </em>the Company amended the Term Loan, which further reduced the applicable margin rates to base rate plus a fixed applicable margin of 1.00% or adjusted LIBOR rate plus a fixed applicable margin of 2.00%. Additionally, the amendment eliminated the Excess Cash Flow payment requirement for <em style="font-weight: inherit; font-style: normal;">2017,</em> and will eliminate future requirements if the Company&#8217;s secured leverage ratio is maintained below 3.75 to <em style="font-weight: inherit; font-style: normal;">1.00</em> times. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $2,346 of fees paid to creditors as original issue discount and deferred financing costs on long-term borrowings and expensed $38 of transaction fees in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2017.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company amended the Term Loan, which further reduced the applicable margin rates to base rate plus a fixed applicable margin of 0.75% or adjusted LIBOR rate plus a fixed applicable margin of 1.75%. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $829 of fees paid to creditors as deferred financing costs on long-term borrowings and expensed $118 of transaction fees in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> December 2019, </em>the Company amended its Term Loan to extend the maturity date from <em style="font-weight: inherit; font-style: normal;"> May 31, 2023 </em>to <em style="font-weight: inherit; font-style: normal;"> December 13, 2026, </em>as well as removed the LIBOR floor of 0.75% from the adjusted LIBOR rate. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $1,247 of fees paid to creditors as&#160;deferred financing costs on long-term borrowings and expensed $432 of transaction fees in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em> Additionally, the Company made a voluntary prepayment of&#160;$49,000&#160;on the term loan, which resulted in the write-off of $926 of original issue discount and capitalized debt issuance costs as a loss on extinguishment of debt in the consolidated statements of comprehensive income.&#160;&#160;&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Term Loan does <em style="font-weight: inherit; font-style: normal;">not</em> require an Excess Cash Flow payment if the Company&#8217;s net secured leverage ratio is maintained below 3.75 to <em style="font-weight: inherit; font-style: normal;">1.00</em> times. As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company&#8217;s net secured leverage ratio was 1.50 to <em style="font-weight: inherit; font-style: normal;">1.00</em> times, and the Company was in compliance with all covenants of the Term Loan. There are <em style="font-weight: inherit; font-style: normal;">no</em> financial maintenance covenants on the Term Loan.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s credit agreements also originally provided for a senior secured ABL revolving credit facility (ABL Facility). The maturity date of the ABL Facility is currently <em style="font-weight: inherit; font-style: normal;"> June 12, 2023. </em>Borrowings under the ABL Facility are guaranteed by all of the Company&#8217;s wholly-owned domestic restricted subsidiaries, and are secured by associated collateral agreements which pledge a <em style="font-weight: inherit; font-style: normal;">first</em> priority lien on all cash, trade accounts receivable, inventory, and other current assets and proceeds thereof, and a <em style="font-weight: inherit; font-style: normal;">second</em> priority lien on all other assets, including fixed assets and intangibles of the Company and certain domestic subsidiaries. ABL Facility borrowings initially bore interest at rates based upon either a base rate plus an applicable margin of 1.00% or adjusted LIBOR rate plus an applicable margin of 2.00%, in each case, subject to adjustments based upon average availability under the ABL Facility.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company amended the ABL Facility; increasing it from $250,000 to $300,000 and extending the maturity date to <em style="font-weight: inherit; font-style: normal;"> June 12, 2023. </em>In addition, the ABL Facility amendment modified the pricing by reducing certain applicable interest rates to either a base rate plus an applicable margin of 0.375% or an adjusted LIBOR rate plus an applicable margin of 1.375%. In connection with this amendment and in accordance with ASC <em style="font-weight: inherit; font-style: normal;">470</em>-<em style="font-weight: inherit; font-style: normal;">50,</em> the Company capitalized $755 of new debt issuance costs as deferred financing costs on long-term borrowings and wrote-off $34 of capitalized debt issuance costs as a loss on extinguishment of debt in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company borrowed $50,000 under the ABL Facility, the proceeds of which were used as a voluntary prepayment of the Term Loan. As a result of the prepayment of the Term Loan, the Company wrote-off $1,298 of original issue discount and capitalized debt issuance costs during the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018</em> as a loss on extinguishment of debt in the consolidated statements of comprehensive income. In <em style="font-weight: inherit; font-style: normal;"> October 2018, </em>the Company repaid the $50,000 outstanding ABL Facility balance with cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>there was $30,961 outstanding under the ABL Facility, leaving $268,608 of availability, net of outstanding letters of credit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>short-term borrowings consisted of borrowings by the Company&#8217;s foreign subsidiaries on local lines of credit and the ABL Facility, which totaled $58,714 and $45,583, respectively.</p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R88.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836068304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Income Taxes (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred Income Tax Assets, Net, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,933<span></span>
</td>
<td class="nump">$ 163<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred Income Tax Liabilities, Net, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">96,328<span></span>
</td>
<td class="nump">71,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(778)<span></span>
</td>
<td class="num">(1,015)<span></span>
</td>
<td class="nump">$ 2,454<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_TaxCreditCarryForwardStateResearchAndDevelopment', window );">Tax Credit Carry Forward State Research and Development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,291<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_TaxCreditCarryforwardStateManufacturing', window );">Tax Credit Carryforward State Manufacturing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,747<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense', window );">Unrecognized Tax Benefits, Interest on Income Taxes Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">71<span></span>
</td>
<td class="nump">37<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense', window );">Unrecognized Tax Benefits, Income Tax Penalties Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 195<span></span>
</td>
<td class="nump">$ 136<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit', window );">Tax Cuts and Jobs Act, Change in Tax Rate, Deferred Tax Liability, Income Tax Benefit</a></td>
<td class="nump">$ 28,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_TaxCreditCarryForwardStateResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of the state research and development credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_TaxCreditCarryForwardStateResearchAndDevelopment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_TaxCreditCarryforwardStateManufacturing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of the state manufacturing tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_TaxCreditCarryforwardStateManufacturing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31931-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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 increase (decrease) in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32123-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income tax benefit for remeasurement of deferred tax liability from change in tax rate pursuant to Tax Cuts and Jobs Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for penalties related to a tax position claimed or expected to be claimed in the tax return.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense for an underpayment of income taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6845402864">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">$ 78,738<span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6856091536">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 10 - Leases - Maturities of Lease liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2020, finance leases</a></td>
<td class="nump">$ 3,769<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2020, operating leases</a></td>
<td class="nump">9,086<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo', window );">2021, finance leases</a></td>
<td class="nump">3,352<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2021, operating leases</a></td>
<td class="nump">7,029<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree', window );">2022, finance leases</a></td>
<td class="nump">3,536<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2022, operating leases</a></td>
<td class="nump">5,472<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour', window );">2023, finance leases</a></td>
<td class="nump">2,659<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2023, operating leases</a></td>
<td class="nump">4,629<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive', window );">2024</a></td>
<td class="nump">2,650<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2024</a></td>
<td class="nump">4,288<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive', window );">After 2023, finance leases</a></td>
<td class="nump">29,371<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">After 2023, operating leases</a></td>
<td class="nump">14,232<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDue', window );">Total minimum lease payments, finance leases</a></td>
<td class="nump">45,337<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total minimum lease payments, operating leases</a></td>
<td class="nump">44,736<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Interest component</a></td>
<td class="num">(19,375)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Interest component</a></td>
<td class="num">(7,727)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Present value of minimum lease payments, finance leases</a></td>
<td class="nump">25,962<span></span>
</td>
<td class="nump">$ 20,171<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember', window );">Other Accrued Liabilities and Operating Lease and Other Long-term Liabilities [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating Lease, Liability, Total</a></td>
<td class="nump">$ 37,009<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due after fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in next fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fourth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in third fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in second fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R84.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847708016">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2020</a></td>
<td class="nump">$ 553<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2021</a></td>
<td class="nump">1,683<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2022</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2023</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour', window );">After 2023</a></td>
<td class="nump">830,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Total</a></td>
<td class="nump">$ 832,236<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt, sinking fund requirements, and other securities redeemable at fixed or determinable prices and dates maturing after the fourth fiscal year following the latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04.(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24072-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6802200&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04.(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24072-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6802200&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04.(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24072-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6802200&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04.(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24072-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6802200&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R80.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855200384">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualCurrent', window );">Current portion - other accrued liabilities</a></td>
<td class="nump">$ 27,885<span></span>
</td>
<td class="nump">$ 25,396<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualNoncurrent', window );">Long-term portion - other long-term liabilities</a></td>
<td class="nump">21,431<span></span>
</td>
<td class="nump">16,389<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Total</a></td>
<td class="nump">49,316<span></span>
</td>
<td class="nump">41,785<span></span>
</td>
<td class="nump">$ 35,422<span></span>
</td>
<td class="nump">$ 31,695<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyAccrualCurrent', window );">Current portion - other accrued liabilities</a></td>
<td class="nump">15,519<span></span>
</td>
<td class="nump">13,646<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyAccrualNoncurrent', window );">Long-term portion - other long-term liabilities</a></td>
<td class="nump">63,219<span></span>
</td>
<td class="nump">54,694<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyAccrual', window );">Total</a></td>
<td class="nump">$ 78,738<span></span>
</td>
<td class="nump">$ 68,340<span></span>
</td>
<td class="nump">$ 57,854<span></span>
</td>
<td class="nump">$ 36,139<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExtendedProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate extended product warranty liability. Does not include the ending balance for the standard product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1),(c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtendedProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExtendedProductWarrantyAccrualCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount at end of the reporting period of the aggregate extended product warranty liability that is expected to be paid within one year of the balance sheet date or normal operating cycle, if longer. Does not include the balance for the standard product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtendedProductWarrantyAccrualCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExtendedProductWarrantyAccrualNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount at end of the reporting period of the aggregate extended product warranty liability that is expected to be paid after one year from the balance sheet date or normal operating cycle, if longer. Does not include the balance for the standard product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtendedProductWarrantyAccrualNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1),(c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid after one year or beyond the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6603066368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Leases - Leases Cost (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease cost</a></td>
<td class="nump">$ 9,647<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization', window );">Amortization of ROU assets</a></td>
<td class="nump">2,531<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestExpense', window );">Interest on lease liabilities</a></td>
<td class="nump">2,227<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Total lease cost</a></td>
<td class="nump">$ 14,405<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense on finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease cost recognized by lessee for lease contract.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858726224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Description of Business<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock', window );">Business Description and Basis of Presentation [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">1.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Description of Business</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Founded in <em style="font-weight: inherit; font-style: normal;">1959,</em> Generac Holdings Inc. (the Company) is a leading global designer and manufacturer of a wide range of energy technology solutions. The Company provides power generation equipment, energy storage systems, and other power products&#160;serving the residential, light commercial and industrial markets. Generac&#8217;s power products and solutions are available globally through a broad network of independent dealers, distributors, retailers, e-commerce partners, wholesalers, and equipment rental companies,&#160;as well as sold direct to certain end user customers.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Over the years, the Company has executed a number of acquisitions that support its strategic plan (refer to Item <em style="font-weight: inherit; font-style: normal;">1</em> in this Annual Report on Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for discussion of our "Powering Our Future" strategic plan). A summary of acquisitions affecting the reporting periods presented include:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#9679;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> January 2017, </em>the Company acquired Motortech GmbH (Motortech), headquartered in Celle, Germany. Motortech is a leading manufacturer of gaseous-engine control systems and accessories, which are sold primarily to European gas-engine manufacturers and to aftermarket customers.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#9679;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> June 2018, </em>the Company acquired Selmec Equipos Industriales, S.A. de C.V. (Selmec), headquartered in Mexico City, Mexico. Selmec is a designer and manufacturer of industrial generators ranging from <em style="font-weight: inherit; font-style: normal;">10kW</em> to <em style="font-weight: inherit; font-style: normal;">2,750kW.</em> Selmec offers a market-leading service platform and specialized engineering capabilities, together with robust integration, project management and remote monitoring services.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#9679;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> February 2019, </em>the Company acquired a majority share of Captiva Energy Solutions Private Limited (Captiva). Captiva, founded in <em style="font-weight: inherit; font-style: normal;">2010</em> and headquartered in Kolkata, India, specializes in customized industrial generators for the India market.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#9679;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> March 2019, </em>the Company acquired Neurio Technology Inc. (Neurio), founded in <em style="font-weight: inherit; font-style: normal;">2005</em> and headquartered in Vancouver, British Columbia. Neurio is a leading energy data company focused on metering technology and sophisticated analytics to optimize energy use within a home or business.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">&#9679;</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">In <em style="font-weight: inherit; font-style: normal;"> April 2019, </em>the Company acquired Pika Energy, Inc. (Pika), founded in <em style="font-weight: inherit; font-style: normal;">2010</em> and located in Westbrook, Maine. Pika is a designer and manufacturer of battery storage technologies that capture and store solar or grid power for homeowners and businesses, and is also a manufacturer of advanced power electronics, software and controls for smart energy storage and management.</p> </td>
     </tr>
    </tbody>
   </table>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the business description and basis of presentation concepts.  Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity.  Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -URI http://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6831331264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="5">12 Months Ended</th>
</tr>
<tr>
<th class="th" colspan="2"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th" colspan="2"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestChangeInRedemptionValue', window );">Redemption value adjustment</a></td>
<td class="nump">$ 1,253<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">$ (17,970)<span></span>
</td>
<td class="nump">$ 909<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=gnrc_RedeemableNoncontrollingInterestMember', window );">Redeemable Noncontrolling Interest [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests', window );">Balance at beginning of period</a></td>
<td class="nump">61,004<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">43,929<span></span>
</td>
<td class="nump">33,138<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_TemporaryEquityAcquired', window );">Noncontrolling interest</a></td>
<td class="nump">3,165<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,540<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[2]</sup></td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TemporaryEquityNetIncome', window );">Net income</a></td>
<td class="nump">75<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,214<span></span>
</td>
<td class="nump">1,631<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments', window );">Foreign currency translation</a></td>
<td class="num">(1,764)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(3,109)<span></span>
</td>
<td class="nump">8,529<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestChangeInRedemptionValue', window );">Redemption value adjustment</a></td>
<td class="num">(1,253)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">17,970<span></span>
</td>
<td class="num">(909)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests', window );">Balance at end of period</a></td>
<td class="nump">$ 61,227<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 61,004<span></span>
</td>
<td class="nump">$ 43,929<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr><td colspan="6"></td></tr>
<tr><td colspan="6"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents the noncontrolling interest of Captiva Energy calculated at the date of acquisition, February 1, 2019.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Represents the additional noncontrolling interest of Pramac resulting from a common control transaction between Generac Mobile Products S.r.l. and Pramac UK Limited legal entities.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_TemporaryEquityAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Increase in temporary equity from a business acquisition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_TemporaryEquityAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestChangeInRedemptionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Change in noncontrolling interest during the period as a result of a change in the redemption value of redeemable noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 16(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestChangeInRedemptionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, attributable to parent and noncontrolling interests, of an entity's issued and outstanding stock which is not included within permanent equity. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable. Includes any type of security that is redeemable at a fixed or determinable price or on a fixed or determinable date or dates, is redeemable at the option of the holder, or has conditions for redemption which are not solely within the control of the issuer. Includes stock with a put option held by an ESOP and stock redeemable by a holder only in the event of a change in control of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.27(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Adjustments to temporary equity resulting from foreign currency translation adjustments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TemporaryEquityNetIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of net income or loss attributable to temporary equity interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TemporaryEquityNetIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=gnrc_RedeemableNoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=gnrc_RedeemableNoncontrollingInterestMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836077952">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 2,204,336<span></span>
</td>
<td class="nump">$ 2,023,464<span></span>
</td>
<td class="nump">$ 1,679,373<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Costs of goods sold</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,406,584<span></span>
</td>
<td class="nump">1,298,424<span></span>
</td>
<td class="nump">1,094,587<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">797,752<span></span>
</td>
<td class="nump">725,040<span></span>
</td>
<td class="nump">584,786<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Selling and service</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">217,683<span></span>
</td>
<td class="nump">191,887<span></span>
</td>
<td class="nump">174,841<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">68,394<span></span>
</td>
<td class="nump">50,019<span></span>
</td>
<td class="nump">42,869<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">110,868<span></span>
</td>
<td class="nump">103,841<span></span>
</td>
<td class="nump">87,581<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangibles</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">28,644<span></span>
</td>
<td class="nump">22,112<span></span>
</td>
<td class="nump">28,861<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">425,589<span></span>
</td>
<td class="nump">367,859<span></span>
</td>
<td class="nump">334,152<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">372,163<span></span>
</td>
<td class="nump">357,181<span></span>
</td>
<td class="nump">250,634<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other (expense) income:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(41,544)<span></span>
</td>
<td class="num">(40,956)<span></span>
</td>
<td class="num">(42,667)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentIncomeNonoperating', window );">Investment income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,767<span></span>
</td>
<td class="nump">1,893<span></span>
</td>
<td class="nump">298<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="num">(926)<span></span>
</td>
<td class="num">(1,332)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Loss on pension settlement</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="num">(10,920)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,933)<span></span>
</td>
<td class="num">(5,710)<span></span>
</td>
<td class="num">(4,566)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Total other expense, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(52,556)<span></span>
</td>
<td class="num">(46,105)<span></span>
</td>
<td class="num">(46,935)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before provision for income taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">319,607<span></span>
</td>
<td class="nump">311,076<span></span>
</td>
<td class="nump">203,699<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">67,299<span></span>
</td>
<td class="nump">69,856<span></span>
</td>
<td class="nump">44,142<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">252,308<span></span>
</td>
<td class="nump">241,220<span></span>
</td>
<td class="nump">159,557<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Net income attributable to noncontrolling interests</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">301<span></span>
</td>
<td class="nump">2,963<span></span>
</td>
<td class="nump">1,749<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Generac Holdings Inc.</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">252,007<span></span>
</td>
<td class="nump">238,257<span></span>
</td>
<td class="nump">157,808<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other comprehensive income (loss):</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Foreign currency translation adjustment</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,210<span></span>
</td>
<td class="num">(5,976)<span></span>
</td>
<td class="nump">15,191<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on derivatives</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(13,855)<span></span>
</td>
<td class="nump">2,924<span></span>
</td>
<td class="nump">3,712<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension liability adjustment</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">10,541<span></span>
</td>
<td class="nump">437<span></span>
</td>
<td class="nump">62<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,104)<span></span>
</td>
<td class="num">(2,615)<span></span>
</td>
<td class="nump">18,965<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest', window );">Total comprehensive income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">251,204<span></span>
</td>
<td class="nump">238,605<span></span>
</td>
<td class="nump">178,522<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest', window );">Comprehensive income (loss) attributable to noncontrolling interests</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(635)<span></span>
</td>
<td class="nump">1,647<span></span>
</td>
<td class="nump">5,549<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income attributable to Generac Holdings Inc.</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 251,839<span></span>
</td>
<td class="nump">$ 236,958<span></span>
</td>
<td class="nump">$ 172,973<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net income attributable to common shareholders per common share - basic: (in dollars per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 4.09<span></span>
</td>
<td class="nump">$ 3.57<span></span>
</td>
<td class="nump">$ 2.56<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average common shares outstanding - basic: (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">61,926,986<span></span>
</td>
<td class="nump">61,662,031<span></span>
</td>
<td class="nump">62,040,704<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income attributable to common shareholders per common share - diluted: (in dollars per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 4.03<span></span>
</td>
<td class="nump">$ 3.54<span></span>
</td>
<td class="nump">$ 2.53<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average common shares outstanding - diluted: (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">62,865,446<span></span>
</td>
<td class="nump">62,233,225<span></span>
</td>
<td class="nump">62,642,872<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Represents pre-tax settlement charges related to the termination of the Company&#8217;s domestic pension plan in the fourth quarter of 2019.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e557-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591552-111686<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4613674-111683<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569643-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591552-111686<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of (increase) decrease to benefit obligation of defined benefit plan from irrevocable action relieving primary responsibility for benefit obligation and eliminating risk for obligation and assets used to effect settlement. Includes, but is not limited to, lump-sum cash payment to participant in exchange for right to receive specified benefits, purchase of nonparticipating annuity contract and change from remeasurement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(10)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanSettlementsBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIncomeNonoperating</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of Net Income (Loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591551-111686<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569643-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=118951672&amp;loc=d3e1436-108581<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (i-k)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109978405&amp;loc=d3e80720-113993<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591551-111686<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3000-108585<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591552-111686<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total amount of expenses directly related to the marketing or selling of products or services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1448-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854907424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="5">12 Months Ended</th>
</tr>
<tr>
<th class="th" colspan="2"><div>Dec. 31, 2019</div></th>
<th class="th" colspan="2"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="nump">$ 761,261<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 554,320<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 397,179<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Net current-period other comprehensive income (loss)</a></td>
<td class="num">(1,104)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(2,615)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">18,965<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="nump">1,032,851<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">761,261<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">554,320<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="num">(18,832)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(12,856)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="nump">2,210<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(5,976)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL</a></td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Net current-period other comprehensive income (loss)</a></td>
<td class="nump">2,210<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(5,976)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="num">(16,622)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(18,832)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(12,856)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember', window );">Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="num">(10,541)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(10,978)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="nump">1,474<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="num">(156)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL</a></td>
<td class="nump">9,067<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[3]</sup></td>
<td class="nump">593<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[4]</sup></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Net current-period other comprehensive income (loss)</a></td>
<td class="nump">10,541<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">437<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(10,541)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(10,978)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember', window );">Accumulated Net Gain (Loss) from Cash Flow Hedges Attributable to Parent [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="nump">5,560<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,636<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="num">(13,855)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[5]</sup></td>
<td class="nump">2,924<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[6]</sup></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL</a></td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Net current-period other comprehensive income (loss)</a></td>
<td class="num">(13,855)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,924<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="num">(8,295)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">5,560<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,636<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember', window );">AOCI Attributable to Parent [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="num">(23,813)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(21,198)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(40,163)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss) before reclassifications</a></td>
<td class="num">(10,171)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(3,208)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL</a></td>
<td class="nump">9,067<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">593<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Net current-period other comprehensive income (loss)</a></td>
<td class="num">(1,104)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(2,615)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance</a></td>
<td class="num">$ (24,917)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">$ (23,813)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">$ (21,198)<span></span>
</td>
</tr>
<tr><td colspan="6"></td></tr>
<tr><td colspan="6"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents unrecognized actuarial gains of $1,992 net of tax effect of $(518), included in the computation of net periodic pension cost for the year ended December 31, 2019. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Represents unrecognized actuarial losses of $(211), net of tax benefit of $55, included in the computation of net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top">Details of reclassifications from AOCL during 2019 are as follows:




Amounts reclassified from AOCL


Loss on pension settlement

 	$	10,920
Amortization of net loss

 	 	843
Total before tax

 	 	11,763
Income tax impact

 	 	(2,696	)
Amounts reclassified from AOCL

 	$	9,067</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top">Represents actuarial losses of $802, net of tax effect of $(209), amortized to net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[5]</td>
<td style="vertical-align: top;" valign="top">Represents unrealized losses of $(18,732), net of tax effect of $4,877 for the year ended December 31, 2019.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[6]</td>
<td style="vertical-align: top;" valign="top">Represents unrealized gains of $3,951, net of tax effect of $(1,027) for the year ended December 31, 2018.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax, before reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=118951672&amp;loc=d3e1436-108581<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=118951672&amp;loc=d3e1436-108581<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17B<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL34724394-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=118951672&amp;loc=d3e1436-108581<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4568740-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4590271-111686<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4568447-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6609815328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Goodwill and Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Schedule of Goodwill [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">621,451</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100,072</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">721,523</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Acquisitions of businesses, net</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,788</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,788</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,656</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,656</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">621,451</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">143,204</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">764,655</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Acquisitions of businesses, net</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37,758</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,078</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,836</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(207</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(207</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">659,209</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">146,075</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">805,284</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Impairment</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Impairment</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,162,402</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(503,193</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">659,209</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,124,644</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(503,193</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">621,451</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">150,686</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4,611</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">146,075</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">147,815</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4,611</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">143,204</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,313,088</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(507,804</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">805,284</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,272,459</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(507,804</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">764,655</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ScheduleOfIntangibleAssetsTableTextBlock', window );">Schedule Of Intangible Assets [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Weighted Average</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Amortization Years</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Amortization</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net Book Value</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Amortization</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net Book Value</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 30%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finite-lived intangible assets:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Tradenames</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,669</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(36,613</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,056</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,378</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(32,416</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Customer lists</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">369,932</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(314,380</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">55,552</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">368,343</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(307,149</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,194</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Patents</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">13</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">131,086</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(110,554</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,532</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">131,030</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(101,060</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,970</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Developed technology</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">82,886</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(17,872</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">65,014</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,169</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(12,058</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,111</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Software</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Non-compete/other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12,063</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,804</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,259</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,829</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,897</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,932</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total finite-lived intangible assets</p> </td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">653,682</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(484,269</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">169,413</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">573,795</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(455,626</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">118,169</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Indefinite-lived tradenames</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total intangible assets</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">782,003</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(484,269</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">297,734</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">702,116</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(455,626</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">246,490</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ScheduleOfIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of intangible assets, by major asset class.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ScheduleOfIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13854-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858839136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Derivative Instruments and Hedging Activities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock', window );">Schedule Of Derivative Assets (Liabilities) at Fair Value [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,<br/> 201</b><b>9</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,<br/> 201</b><b>8</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commodity contracts</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(160</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Foreign currency contracts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">31</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(117</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Interest rate swaps</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,425</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,307</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of derivative assets and liabilities at fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R104.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847643648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Non-vested (in shares)</a></td>
<td class="nump">425,996<span></span>
</td>
<td class="nump">392,276<span></span>
</td>
<td class="nump">361,403<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Non-vested (in dollars per share)</a></td>
<td class="nump">$ 40.50<span></span>
</td>
<td class="nump">$ 37.77<span></span>
</td>
<td class="nump">$ 38.18<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">265,255<span></span>
</td>
<td class="nump">208,803<span></span>
</td>
<td class="nump">211,769<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share)</a></td>
<td class="nump">$ 62.38<span></span>
</td>
<td class="nump">$ 44.49<span></span>
</td>
<td class="nump">$ 39.91<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(184,628)<span></span>
</td>
<td class="num">(128,433)<span></span>
</td>
<td class="num">(133,796)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in dollars per share)</a></td>
<td class="nump">$ 38.78<span></span>
</td>
<td class="nump">$ 39.03<span></span>
</td>
<td class="nump">$ 40.60<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="num">(14,986)<span></span>
</td>
<td class="num">(46,650)<span></span>
</td>
<td class="num">(47,100)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (in dollars per share)</a></td>
<td class="nump">$ 44.23<span></span>
</td>
<td class="nump">$ 39.43<span></span>
</td>
<td class="nump">$ 42.48<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Non-vested (in shares)</a></td>
<td class="nump">491,637<span></span>
</td>
<td class="nump">425,996<span></span>
</td>
<td class="nump">392,276<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Non-vested (in dollars per share)</a></td>
<td class="nump">$ 52.84<span></span>
</td>
<td class="nump">$ 40.50<span></span>
</td>
<td class="nump">$ 37.77<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R100.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823685808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2018 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at beginning of period</a></td>
<td class="nump">$ 58,014<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at end of period</a></td>
<td class="nump">61,870<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Fair Value, Inputs, Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at end of period</a></td>
<td class="nump">10,134<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember', window );">Other Investment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at end of period</a></td>
<td class="nump">10,134<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember', window );">Other Investment [Member] | Fair Value, Inputs, Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at beginning of period</a></td>
<td class="nump">9,700<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase', window );">Purchases</a></td>
<td class="nump">3,805<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale', window );">Redemptions</a></td>
<td class="num">(3,795)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod', window );">Realized gains</a></td>
<td class="nump">424<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at end of period</a></td>
<td class="nump">$ 10,134<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, measured using unobservable inputs, of increase (decrease) in plan assets of defined benefit plan from actual return (loss) on assets sold.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(02)(A)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanFairValueOfPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, measured using unobservable input, of decrease in plan asset of defined benefit plan from sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(02)(B)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, measured using unobservable input, of increase in plan asset of defined benefit plan from purchase.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(02)(B)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_OtherInvestmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847647872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyDisclosureTextBlock', window );">Product Warranty Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">1<span style="-sec-ix-hidden:c56032330"><span style="-sec-ix-hidden:c56032331"><span style="-sec-ix-hidden:c56032332"><span style="-sec-ix-hidden:c56032333"><span style="-sec-ix-hidden:c56032334">1</span></span></span></span></span>.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Product Warranty Obligations</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company records a liability for standard product warranty obligations accounted for as assurance warranties at the time of sale to a customer based upon historical warranty experience. The Company also records a liability for specific warranty matters when they become known and are reasonably estimable. The following is a tabular reconciliation of the Company&#8217;s standard product warranty liability accounted for as an assurance warranty:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41,785</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35,422</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">31,695</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Product warranty reserve assumed in acquisition</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,062</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(26,096</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(20,029</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(18,861</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for warranty issued</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,060</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">26,910</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,347</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Changes in estimates for pre-existing warranties</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">505</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(518</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,198</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">49,316</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">41,785</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">35,422</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Additionally, the Company sells extended warranty coverage for certain products, which it accounts for as a service warranty. The sales of extended warranties are recorded as deferred revenue, and typically have a duration of <span style="-sec-ix-hidden:c56032335">five</span> to <span style="-sec-ix-hidden:c56032336">ten</span> years. The deferred revenue related to extended warranty coverage is amortized over the duration of the extended warranty contract period, following the standard warranty period, using the straight-line method. The Company believes the straight-line method is appropriate because the performance obligation is satisfied based on the passage of time. The amortization of deferred revenue is recorded to net sales in the consolidated statements of comprehensive income. The following is a tabular reconciliation of the deferred revenue related to extended warranty coverage:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">68,340</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">57,854</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36,139</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred revenue contracts issued</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24,483</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,440</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,262</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of deferred revenue contracts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(14,085</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(10,954</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(7,547</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">78,738</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">68,340</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">57,854</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The timing of recognition of the Company&#8217;s deferred revenue balance related to extended warranties at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,535</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,798</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,705</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,367</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">20,333</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">78,738</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;">2017,</em> the Company launched a post-sale extended warranty marketing program with a <em style="font-weight: inherit; font-style: normal;">third</em> party. In the program&#8217;s agreement, the Company is required to pay fees to the <em style="font-weight: inherit; font-style: normal;">third</em>-party service provider based on the number of extended warranty contracts that they sell, which it classifies as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income over the same period that the underlying deferred revenue is recognized. The balance of deferred contract costs as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> was $6,190 and $4,782, respectively. Amortization of deferred contract costs recorded during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> was $869, $615 and $193, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Standard product warranty obligations and extended warranty related deferred revenues are included in the consolidated balance sheets as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Product warranty liability</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion - other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">27,885</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,396</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Long-term portion - other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">21,431</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">16,389</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">49,316</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">41,785</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred revenue related to extended warranties</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion - other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,519</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,646</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Long-term portion - other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">63,219</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">54,694</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">78,738</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">68,340</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"/>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -URI http://asc.fasb.org/topic&amp;trid=2155896<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858777712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Acquisitions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Business Combination Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">3.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Acquisitions</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#160;</i></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisition of Pika</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#160;</i></b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> April 26, 2019, </em>the Company acquired Pika for a purchase price, net of cash acquired, of $49,068. The acquisition purchase price was funded solely through cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company recorded a preliminary purchase price allocation during the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> which was trued-up in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> based upon its estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $58,196 of intangible assets, including $19,896 of goodwill recorded in the Domestic segment, as of the acquisition date. The goodwill ascribed to the acquisition is <em style="font-weight: inherit; font-style: normal;">not</em> deductible for tax purposes. The accompanying consolidated financial statements include the results of Pika from the date of acquisition through <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The preliminary allocation of the purchase price is based on a preliminary valuation performed to determine the fair value of the net assets as of the acquisition date. The purchase price allocation is subject to further analysis and review, primarily around the review and final valuation of acquired intangible assets.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#160;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisition of Neurio</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> March 12, 2019, </em>the Company acquired Neurio for a purchase price of $59,071, net of cash acquired and inclusive of a deferred payment of $7,922 which was made during the <em style="font-weight: inherit; font-style: normal;">third</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em> The acquisition purchase price was funded solely through cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company recorded a preliminary purchase price allocation in the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> which was trued-up in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> based upon its estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $58,762 of intangible assets, including $17,862 of goodwill recorded in the Domestic segment, as of the acquisition date. Substantially all of the goodwill and other intangible assets ascribed to this acquisition are&#160;deductible for tax purposes. The accompanying consolidated financial statements include the results of Neurio from the date of acquisition through <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The preliminary allocation of the purchase price is based on a preliminary valuation performed to determine the fair value of the net assets as of the acquisition date. The purchase price allocation is subject to further analysis and review, primarily around the review and final valuation of acquired intangible assets.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>&#160;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Acquisition of Selmec</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> June 1, 2018, </em>the Company acquired Selmec for a purchase price of $79,972, net of cash acquired and inclusive of earnout payments of $14,902. Changes in the fair value of the earnout liability during <em style="font-weight: inherit; font-style: normal;">2019</em> of $(977), which included interest accretion of $2,740 and other fair value remeasurement adjustments of $(3,717), were recognized as a component of operating income in the Company&#8217;s consolidated statements of comprehensive income for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The acquisition purchase price was funded solely through cash on hand.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company finalized the Selmec purchase price allocation during the <em style="font-weight: inherit; font-style: normal;">second</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019</em> based upon its estimates of the fair value of the acquired assets and assumed liabilities. The final purchase price allocation as of the <em style="font-weight: inherit; font-style: normal;"> June 1, 2018 </em>opening balance sheet date was as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>June 1, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accounts receivable</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,302</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Inventories</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Prepaid expense and other assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,323</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Property and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,572</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Intangible assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,631</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,196</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,252</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">597</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total assets acquired</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">115,873</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accounts payable</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,216</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accrued wages and employee benefits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">397</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,671</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,974</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,643</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net assets acquired</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">79,972</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The goodwill ascribed to the acquisition is <em style="font-weight: inherit; font-style: normal;">not</em> deductible for tax purposes. The accompanying consolidated financial statements include the results of Selmec from the date of acquisition through <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#160;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b><i>Pro Forma Information</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following unaudited pro forma information of the Company gives effect to all acquisitions as though the transactions had occurred on <em style="font-weight: inherit; font-style: normal;"> January 1, 2017.&#160;</em>Refer to Note <em style="font-weight: inherit; font-style: normal;">1,</em> &#8220;Description of Business,&#8221; for further information on the acquisitions included in the table.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt 7.2pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net Sales:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,204,336</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,023,464</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,679,373</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,206,952</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,067,737</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,755,358</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,007</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">238,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">157,808</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">248,335</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">230,379</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">151,764</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Net income attributable to Generac Holdings Inc. per common share - diluted</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.03</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.54</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.53</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.97</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.41</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.44</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">This unaudited pro forma information is presented for informational purposes only and is <em style="font-weight: inherit; font-style: normal;">not</em> necessarily indicative of the results of operations that actually would have been achieved had the acquisitions been consummated on <em style="font-weight: inherit; font-style: normal;"> January 1, 2017.</em></p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -URI http://asc.fasb.org/topic&amp;trid=2303972<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847815856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Segment Reporting<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Reporting Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">7.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Segment Reporting</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company has <span style="-sec-ix-hidden:c56031884">two</span> reportable segments for financial reporting purposes &#8211; Domestic and International. The Domestic segment includes the legacy Generac business, (excluding its traditional Latin American export operations), and the acquisitions that are based in the U.S. and Canada, all of which have revenues that are substantially derived from the U.S. and Canada. The International segment includes the legacy Generac business's Latin American export operations,&#160;and the Ottomotores, Tower Light, Pramac, Motortech and Selmec acquisitions, all of which have revenues that are substantially derived from outside the U.S and Canada. Both reportable segments design and manufacture a wide range of power generation equipment, energy technology solutions, and other power products. The Company has multiple operating segments, which it aggregates into the <em style="font-weight: inherit; font-style: normal;">two</em> reportable segments, based on materially similar economic characteristics, products, production processes, classes of customers, distribution methods and regional considerations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company's product offerings consist primarily of power generation equipment, energy technology solutions, and other power products geared for varying end customer uses. Residential products and commercial &amp; industrial (C&amp;I) products are each a similar class of products based on similar power output and end customer. The breakout of net sales between residential, C&amp;I, and other products by reportable segment is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Net Sales by Segment</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31, 2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Domestic</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>International</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Total </b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,086,019</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">57,704</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,143,723</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">513,482</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">358,113</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">871,595</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">143,397</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">45,621</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">189,018</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,742,898</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">461,438</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,204,336</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

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

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">980,707</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62,032</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,042,739</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">461,415</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">358,855</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">820,270</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">124,398</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,057</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">160,455</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,566,520</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">456,944</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,023,464</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

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

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">796,237</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">74,253</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">870,490</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">372,635</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,718</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">684,353</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">102,806</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">21,724</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">124,530</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,271,678</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">407,695</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,679,373</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Residential products consist primarily of automatic home standby generators ranging in output from <em style="font-weight: inherit; font-style: normal;">6kW</em> to <em style="font-weight: inherit; font-style: normal;">60kW,</em> portable generators, energy storage and monitoring solutions, and other outdoor power equipment. These products are sold through independent residential dealers, national and regional retailers, e-commerce merchants, electrical/HVAC/solar wholesalers, solar installers, and outdoor power equipment dealers. The residential products revenue consists of the sale of the product to our distribution partners, which in turn sell or rent the product to the end consumer, including installation and maintenance services. In some cases, residential products are sold direct to the end consumer. Substantially all of the residential products revenues are transferred to the customer at a point in time.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">C&amp;I products consist of larger output stationary generators used in C&amp;I applications and fueled by diesel, natural gas, liquid propane and bi-fuel, with power outputs ranging from <em style="font-weight: inherit; font-style: normal;">10kW</em> up to <em style="font-weight: inherit; font-style: normal;">3,250kW.</em> Also included in C&amp;I products are mobile generators, light towers, mobile heaters and mobile pumps. These products are sold through industrial distributors and dealers, equipment rental companies and equipment distributors. The C&amp;I products revenue consists of the sale of the product to our distribution partners, which in turn sell or rent the product to the end customer, including installation and maintenance services. In some cases, C&amp;I products are sold direct to the end customer. Substantially all of the C&amp;I products revenues are transferred to the customer at a point in time.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other products consist primarily of aftermarket service parts and product accessories sold to our dealers,&#160;the amortization of extended warranty deferred revenue, and remote monitoring subscription revenue. The aftermarket service parts and product accessories are generally transferred to the customer at a point in time, while the extended warranty and subscription revenue are&#160;recognized over the life of the contract.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Management evaluates the performance of its segments based primarily on Adjusted EBITDA, which is reconciled to Income before provision for income taxes below. The computation of Adjusted EBITDA is based on the definition that is contained in the Company&#8217;s credit agreements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Adjusted EBITDA</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">428,667</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">388,495</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">282,450</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">25,448</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,057</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">34,850</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total adjusted EBITDA</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">454,115</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">424,552</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">317,300</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest expense</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(41,544</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(40,956</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(42,667</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Depreciation and amortization</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(60,767</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(47,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(51,988</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash write-down and other adjustments (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(240</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,532</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,923</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash share-based compensation expense (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(16,694</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(14,563</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,205</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on extinguishment of debt (3)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(926</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,332</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement (4)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,920</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Transaction costs and credit facility fees (5)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,724</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,883</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,145</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Business optimization expenses (6)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,572</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(952</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,912</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">879</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(850</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(761</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">319,607</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">311,076</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">203,699</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Includes certain foreign currency and purchase accounting related adjustments, gains/losses on disposal of assets and unrealized mark-to-market adjustments on commodity contracts.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">3</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">4</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents pre-tax settlement charges related to the termination of the Company&#8217;s domestic pension plan in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">5</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity issuance, debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">6</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents severance and other non-recurring restructuring charges related to the consolidation of certain of our facilities.</p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2019,</em> management has determined that the Latin American export operations of the legacy Generac business (GPS LATAM) should have been included in the International reportable segment beginning in <em style="font-weight: inherit; font-style: normal;">2018.</em> Previously, GPS LATAM was reported in the Domestic segment, in amounts that were <em style="font-weight: inherit; font-style: normal;">not</em> material. This change is to reflect the current leadership structure as well as how the Company makes financial decisions and allocates resources for the overall Latin America reporting unit. To reflect this change, management has chosen to correct the net sales and adjusted EBITDA by segment included in this Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017.</em> The following table details the amounts adjusted from the Domestic segment to the International segment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2019</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2018</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2017</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 43%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential Products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,129</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,924</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,888</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr class="GFJY4-DCU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition" style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,724</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,651</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,940</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">998</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,230</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total Net Sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,851</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,828</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">984</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">190</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,840</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">There was <em style="font-weight: inherit; font-style: normal;">no</em> impact to the Company&#8217;s reporting of total assets, depreciation and amortization, and capital expenditures by segment as a result of this&#160;change.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The following tables summarize additional financial information by reportable segment:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Assets</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,123,251</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,868,554</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,612,607</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">542,418</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">557,760</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">413,358</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,665,669</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,426,314</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,025,965</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

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

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Depreciation and Amortization</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,145</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35,586</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,764</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,822</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,026</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">60,909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">47,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">51,988</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

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

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Capital Expenditures</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36,007</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38,242</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,258</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24,795</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,359</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,003</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">60,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">47,601</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33,261</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s sales in the United States represent approximately 75%, 74%, and 74% of total sales for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Approximately 80% of the Company&#8217;s identifiable long-lived assets are located in the United States as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855410432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations 1 (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNet', window );">Capitalized Contract Cost, Net, Total</a></td>
<td class="nump">$ 6,190<span></span>
</td>
<td class="nump">$ 4,782<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostAmortization', window );">Capitalized Contract Cost, Amortization</a></td>
<td class="nump">$ 869<span></span>
</td>
<td class="nump">$ 615<span></span>
</td>
<td class="nump">$ 193<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ExtendedWarrantyTerm', window );">Extended Warranty Term</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ExtendedWarrantyTerm', window );">Extended Warranty Term</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ExtendedWarrantyTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expiration period of the extended warranty.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ExtendedWarrantyTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedContractCostAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=68051541&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedContractCostNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=68051541&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R85.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836219616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Stock Repurchase Program (Details Textual) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1">53 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Oct. 31, 2016</div></th>
<th class="th"><div>Aug. 31, 2015</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Stock Repurchase Program, Authorized Amount</a></td>
<td class="nump">$ 250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 250,000<span></span>
</td>
<td class="nump">$ 200,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramPeriodInForce1', window );">Stock Repurchase Program, Period in Force</a></td>
<td class="text">24 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Payments for Repurchase of Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ (0)<span></span>
</td>
<td class="nump">$ 25,656<span></span>
</td>
<td class="nump">$ 30,012<span></span>
</td>
<td class="nump">$ 305,547<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockAcquiredAverageCostPerShare', window );">Treasury Stock Acquired, Average Cost Per Share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 35.21<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_TreasuryStockMember', window );">Treasury Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramShares', window );">Shares Acquired Under Stock Repurchases Program, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">560,000<span></span>
</td>
<td class="nump">844,500<span></span>
</td>
<td class="nump">8,676,706<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SharesAcquiredUnderStockRepurchasesProgramShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramPeriodInForce1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period which shares may be purchased under a stock repurchase plan authorized by an entity's Board of Directors, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramPeriodInForce1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockAcquiredAverageCostPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total cost of shares repurchased divided by the total number of shares repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockAcquiredAverageCostPerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_TreasuryStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_TreasuryStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6859727744">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Credit Agreements (Details Textual)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="5">1 Months Ended</th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>May 31, 2013 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 31, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>May 31, 2017</div></th>
<th class="th"><div>May 31, 2015</div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>Jun. 30, 2014</div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2017 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain (Loss) on Extinguishment of Debt, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (926)<span></span>
</td>
<td class="num">$ (1,332)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Long-term Line of Credit, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Short-term Debt, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">58,714<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">58,714<span></span>
</td>
<td class="nump">$ 45,583<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=gnrc_ABLRevolvingCreditFacilityMember', window );">ABL Revolving Credit Facility [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of Credit Facility, Maximum Borrowing Capacity</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=gnrc_AmendedABLFacilityMember', window );">Amended ABL Facility [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of Credit Facility, Maximum Borrowing Capacity</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNet', window );">Debt Issuance Costs, Net, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">755<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">755<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain (Loss) on Extinguishment of Debt, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(34)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromLinesOfCredit', window );">Proceeds from Lines of Credit, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLinesOfCredit', window );">Repayments of Lines of Credit</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Long-term Line of Credit, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,961<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,961<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Line of Credit Facility, Remaining Borrowing Capacity</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">268,608<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 268,608<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_VariableRateAxis=us-gaap_BaseRateMember', window );">Base Rate [Member] | ABL Revolving Credit Facility [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.375%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_VariableRateAxis=gnrc_AdjustedLIBORRateMember', window );">Adjusted LIBOR Rate [Member] | ABL Revolving Credit Facility [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.375%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of Credit Facility, Maximum Borrowing Capacity</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 1,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_UncommittedIncrementalTermLoanFacility', window );">Uncommitted Incremental Term Loan Facility</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_NetDebtLeverageRatioThreshold', window );">Net Debt Leverage Ratio Threshold</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.75<span></span>
</td>
<td class="nump">3.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNet', window );">Debt Issuance Costs, Net, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,346<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,247<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,247<span></span>
</td>
<td class="nump">$ 829<span></span>
</td>
<td class="nump">2,346<span></span>
</td>
<td class="nump">$ 1,432<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFeeAmount', window );">Debt Instrument, Fee Amount</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 38<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">432<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 432<span></span>
</td>
<td class="nump">$ 118<span></span>
</td>
<td class="nump">$ 38<span></span>
</td>
<td class="nump">$ 85<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SecuredLeverageRatio', window );">Secured Leverage Ratio</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.75<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Repayments of Long-term Debt, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">49,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain (Loss) on Extinguishment of Debt, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (926)<span></span>
</td>
<td class="num">$ (1,298)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member] | Base Rate [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.75%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member] | Base Rate [Member] | Net Debt Leverage Ratio Threshold [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member] | Adjusted LIBOR Rate [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.75%<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="nump">2.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member] | Adjusted LIBOR Rate [Member] | Net Debt Leverage Ratio Threshold [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member] | LIBOR Floor Rate [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="14"></td></tr>
<tr><td colspan="14"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_NetDebtLeverageRatioThreshold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Threshold of the ratio used to calculate the financial leverage and the ability to meet financial obligations. If the borrower's actual net debt leverage ratio falls below this threshold for a certain measurement period, the applicable margin related to LIBOR rate loans can be reduced by a specified percentage.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_NetDebtLeverageRatioThreshold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SecuredLeverageRatio">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Ratio used to calculate financial leverage and the ability to meet financial obligations. If the borrower's actual secured leverage ratio is below the 3.75 threshold for the annual period, the Excess Cash Flow payment requirement for that period is eliminated.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SecuredLeverageRatio</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_UncommittedIncrementalTermLoanFacility">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Refers to uncommitted incremental term loan facility after amendment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_UncommittedIncrementalTermLoanFacility</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFeeAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the fee that accompanies borrowing money under the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFeeAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermBorrowings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermBorrowings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=gnrc_ABLRevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=gnrc_ABLRevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=gnrc_AmendedABLFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=gnrc_AmendedABLFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_BaseRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_BaseRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=gnrc_AdjustedLIBORRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=gnrc_AdjustedLIBORRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=gnrc_NetDebtLeverageRatioThresholdMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=gnrc_NetDebtLeverageRatioThresholdMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=gnrc_LIBORFloorRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=gnrc_LIBORFloorRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855026048">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_FinanceLeaseRightOfUseAssetGross', window );">Finance lease ROU assets, gross</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 29,142<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation', window );">Accumulated depreciation - finance lease ROU assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(3,079)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAsset', window );">Finance lease ROU assets, net (4)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">26,063<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Finance lease liabilities - current (5)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,830<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="nump">$ 902<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Finance lease liabilities - noncurrent (6)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[3]</sup></td>
<td class="nump">24,132<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Total finance lease liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">25,962<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 20,171<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=gnrc_OperatingLeaseAndOtherAssetsMember', window );">Operating Lease and Other Assets [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease ROU assets (1)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[4]</sup></td>
<td class="nump">35,950<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesMember', window );">Other Accrued Liabilities [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities - current (2)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[5]</sup></td>
<td class="nump">7,231<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember', window );">Operating Lease and Other Long-term Liabilities [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities - noncurrent (3)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[6]</sup></td>
<td class="nump">29,778<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember', window );">Other Accrued Liabilities and Operating Lease and Other Long-term Liabilities [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total operating lease liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 37,009<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Recorded in the property and equipment, net line</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Recorded in the current portion of long-term borrowings and finance lease obligations line</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top">Recorded in the long-term borrowings and finance lease obligations line</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top">Recorded in the operating lease and other assets line</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[5]</td>
<td style="vertical-align: top;" valign="top">Recorded in the other accrued liabilities line</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[6]</td>
<td style="vertical-align: top;" valign="top">Recorded in the operating lease and other long-term liabilities line</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation for finance lease right of use assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_FinanceLeaseRightOfUseAssetGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross amount of lessee's right to use underlying asset under finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_FinanceLeaseRightOfUseAssetGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gnrc_OperatingLeaseAndOtherAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gnrc_OperatingLeaseAndOtherAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R89.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855059904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Income Taxes - Provision for Income Taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Current:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 41,686<span></span>
</td>
<td class="nump">$ 32,072<span></span>
</td>
<td class="nump">$ 15,753<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">4,211<span></span>
</td>
<td class="nump">9,639<span></span>
</td>
<td class="nump">1,775<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">2,660<span></span>
</td>
<td class="nump">4,546<span></span>
</td>
<td class="nump">4,585<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current</a></td>
<td class="nump">48,557<span></span>
</td>
<td class="nump">46,257<span></span>
</td>
<td class="nump">22,113<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Deferred:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">19,393<span></span>
</td>
<td class="nump">22,225<span></span>
</td>
<td class="nump">18,213<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="nump">1,390<span></span>
</td>
<td class="nump">1,910<span></span>
</td>
<td class="nump">4,139<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Foreign</a></td>
<td class="num">(1,263)<span></span>
</td>
<td class="nump">479<span></span>
</td>
<td class="num">(2,777)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance', window );">Deferred</a></td>
<td class="nump">19,520<span></span>
</td>
<td class="nump">24,614<span></span>
</td>
<td class="nump">19,575<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="num">(778)<span></span>
</td>
<td class="num">(1,015)<span></span>
</td>
<td class="nump">2,454<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">$ 67,299<span></span>
</td>
<td class="nump">$ 69,856<span></span>
</td>
<td class="nump">$ 44,142<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The component of income tax expense for the period representing the increase (decrease) in the entity's deferred tax assets and liabilities pertaining to continuing operations before adjustment of change in valuation allowance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentForeignTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentForeignTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredForeignIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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 increase (decrease) in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32123-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R79.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6848026096">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">$ 78,738<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">15,535<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">16,798<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">14,705<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">11,367<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue performance obligation</a></td>
<td class="nump">$ 20,333<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6834531456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Additional Paid-in Capital [Member]</div></th>
<th class="th"><div>Treasury Stock [Member]</div></th>
<th class="th"><div>Excess Purchase Price over Predecessor Basis [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>AOCI Attributable to Parent [Member]</div></th>
<th class="th"><div>Parent [Member]</div></th>
<th class="th"><div>Noncontrolling Interest [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2016</a></td>
<td class="nump">70,261,481<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(7,564,874)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2016</a></td>
<td class="nump">$ 702<span></span>
</td>
<td class="nump">$ 449,049<span></span>
</td>
<td class="num">$ (262,402)<span></span>
</td>
<td class="num">$ (202,116)<span></span>
</td>
<td class="nump">$ 452,119<span></span>
</td>
<td class="num">$ (40,163)<span></span>
</td>
<td class="nump">$ 397,189<span></span>
</td>
<td class="num">$ (10)<span></span>
</td>
<td class="nump">$ 397,179<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance', window );">Change in noncontrolling interest share</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">184<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ChangeInNoncontrollingInterestEquityImpact', window );">Change in noncontrolling interest share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,124)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,124)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,940)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on derivatives</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">3,712<span></span>
</td>
<td class="nump">3,712<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">3,712<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">15,191<span></span>
</td>
<td class="nump">15,191<span></span>
</td>
<td class="num">(14)<span></span>
</td>
<td class="nump">15,177<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares', window );">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price (in shares)</a></td>
<td class="nump">558,692<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue', window );">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</a></td>
<td class="nump">$ 6<span></span>
</td>
<td class="nump">2,686<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,692<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,692<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Net share settlement of restricted stock awards (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(39,500)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Net share settlement of restricted stock awards</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">$ (1,591)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,591)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,591)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramShares', window );">Stock repurchases (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(844,500)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramValue', window );">Stock repurchases</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">$ (30,012)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(30,012)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(30,012)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,205<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,205<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,205<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension liability adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62<span></span>
</td>
<td class="nump">62<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestChangeInRedemptionValue', window );">Redemption value adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">909<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">909<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">909<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Generac Holdings Inc.</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">157,808<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">157,808<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">157,808<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">119<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">157,927<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2017</a></td>
<td class="nump">70,820,173<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(8,448,874)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2017</a></td>
<td class="nump">$ 708<span></span>
</td>
<td class="nump">459,816<span></span>
</td>
<td class="num">$ (294,005)<span></span>
</td>
<td class="num">(202,116)<span></span>
</td>
<td class="nump">610,836<span></span>
</td>
<td class="num">(21,198)<span></span>
</td>
<td class="nump">554,041<span></span>
</td>
<td class="nump">279<span></span>
</td>
<td class="nump">554,320<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on derivatives</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,924<span></span>
</td>
<td class="nump">2,924<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,924<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(5,976)<span></span>
</td>
<td class="num">(5,976)<span></span>
</td>
<td class="num">(2)<span></span>
</td>
<td class="num">(5,978)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares', window );">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price (in shares)</a></td>
<td class="nump">366,245<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue', window );">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</a></td>
<td class="nump">$ 4<span></span>
</td>
<td class="nump">1,737<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,741<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,741<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Net share settlement of restricted stock awards (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(38,186)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Net share settlement of restricted stock awards</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">$ (1,812)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,812)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,812)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramShares', window );">Stock repurchases (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(560,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramValue', window );">Stock repurchases</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">$ (25,656)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(25,656)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(25,656)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">14,563<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">14,563<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">14,563<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension liability adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">437<span></span>
</td>
<td class="nump">437<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">437<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestChangeInRedemptionValue', window );">Redemption value adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(17,970)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(17,970)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(17,970)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Generac Holdings Inc.</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">238,257<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">238,257<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">238,257<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">749<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">239,006<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Cash dividends paid to noncontrolling interest of subsidiary</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(314)<span></span>
</td>
<td class="num">(314)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2018</a></td>
<td class="nump">71,186,418<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9,047,060)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2018</a></td>
<td class="nump">$ 712<span></span>
</td>
<td class="nump">476,116<span></span>
</td>
<td class="num">$ (321,473)<span></span>
</td>
<td class="num">(202,116)<span></span>
</td>
<td class="nump">831,123<span></span>
</td>
<td class="num">(23,813)<span></span>
</td>
<td class="nump">760,549<span></span>
</td>
<td class="nump">712<span></span>
</td>
<td class="nump">761,261<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on derivatives</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(13,855)<span></span>
</td>
<td class="num">(13,855)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(13,855)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,210<span></span>
</td>
<td class="nump">2,210<span></span>
</td>
<td class="num">(30)<span></span>
</td>
<td class="nump">2,180<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares', window );">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price (in shares)</a></td>
<td class="nump">481,308<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue', window );">Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="nump">6,056<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">6,061<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">6,061<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Net share settlement of restricted stock awards (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(55,953)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Net share settlement of restricted stock awards</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">$ (3,078)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(3,078)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(3,078)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramShares', window );">Stock repurchases (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">16,694<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">16,694<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">16,694<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension liability adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,541<span></span>
</td>
<td class="nump">10,541<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,541<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestChangeInRedemptionValue', window );">Redemption value adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,253<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,253<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,253<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Generac Holdings Inc.</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">252,007<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">252,007<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">252,007<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">226<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">252,233<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Cash dividends paid to noncontrolling interest of subsidiary</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(285)<span></span>
</td>
<td class="num">(285)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation', window );">Change in noncontrolling interest shares</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(154)<span></span>
</td>
<td class="num">(154)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2019</a></td>
<td class="nump">71,667,726<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9,103,013)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2019</a></td>
<td class="nump">$ 717<span></span>
</td>
<td class="nump">$ 498,866<span></span>
</td>
<td class="num">$ (324,551)<span></span>
</td>
<td class="num">$ (202,116)<span></span>
</td>
<td class="nump">$ 1,084,383<span></span>
</td>
<td class="num">$ (24,917)<span></span>
</td>
<td class="nump">$ 1,032,382<span></span>
</td>
<td class="nump">$ 469<span></span>
</td>
<td class="nump">$ 1,032,851<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ChangeInNoncontrollingInterestEquityImpact">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents equity impact of the change in non-controlling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ChangeInNoncontrollingInterestEquityImpact</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SharesAcquiredUnderStockRepurchasesProgramShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SharesAcquiredUnderStockRepurchasesProgramValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and are being held in treasury</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SharesAcquiredUnderStockRepurchasesProgramValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued under equity incentive plans, net of shares withheld for employee taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock issued under equity incentive plans, net of shares withheld for employee taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116855982&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestChangeInRedemptionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Change in noncontrolling interest during the period as a result of a change in the redemption value of redeemable noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 16(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestChangeInRedemptionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Portion of net income (loss) attributable to nonredeemable noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.19)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after income tax of income (loss) including the portion attributable to nonredeemable noncontrolling interest. Excludes the portion attributable to redeemable noncontrolling interest recognized as temporary equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of the reduction or elimination during the period of a noncontrolling interest resulting from the parent's loss of control and deconsolidation of the entity in which one or more outside parties had a noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in noncontrolling interest from subsidiary issuance of equity interests to noncontrolling interest holders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569655-111683<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b,c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (i-k)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109978405&amp;loc=d3e80720-113993<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4568740-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4590271-111686<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4568447-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823556624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Redeemable Noncontrolling Interest (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Feb. 01, 2019</div></th>
<th class="th"><div>Feb. 28, 2019</div></th>
<th class="th"><div>Mar. 01, 2016</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=gnrc_PramacMember', window );">Pramac [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners', window );">Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=gnrc_CaptivaEnergySolutionsMember', window );">Captiva Energy Solutions [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners', window );">Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=gnrc_PramacMember', window );">Pramac [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Business Acquisition, Percentage of Voting Interests Acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RedeemableNoncontrollingInterestEquityFairValue', window );">Redeemable Noncontrolling Interest, Equity, Fair Value, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 34,253<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_NoncontrollingInterestAgreementExtensionOfTerm', window );">Noncontrolling Interest Agreement, Extension of Term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=gnrc_CaptivaEnergySolutionsMember', window );">Captiva Energy Solutions [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Business Acquisition, Percentage of Voting Interests Acquired</a></td>
<td class="nump">51.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RedeemableNoncontrollingInterestEquityFairValue', window );">Redeemable Noncontrolling Interest, Equity, Fair Value, Total</a></td>
<td class="nump">$ 3,165<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption', window );">Business Acquisition, Noncontrolling Interest, Term of Put Option</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessAcquisitionTermOfCallOption', window );">Business Acquisition, Term of Call Option</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The term of a put option available to the noncontrolling interest of a business acquired by the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessAcquisitionTermOfCallOption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The term of call option available to the company in a business acquisition transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessAcquisitionTermOfCallOption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_NoncontrollingInterestAgreementExtensionOfTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The extension of the term in the noncontrolling interest agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_NoncontrollingInterestAgreementExtensionOfTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting equity interests acquired at the acquisition date in the business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RedeemableNoncontrollingInterestEquityFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate fair value as of the reporting date of all noncontrolling interests which are redeemable by the (parent) entity (1) at a fixed or determinable price on a fixed or determinable date, (2) at the option of the holder of the noncontrolling interest, or (3) upon occurrence of an event that is not solely within the control of the (parent) entity. This item includes noncontrolling interest holder's ownership (or holders' ownership) regardless of the type of equity interest (common, preferred, other) including all potential organizational (legal) forms of the investee entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (16)(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (12)(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RedeemableNoncontrollingInterestEquityFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=gnrc_PramacMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=gnrc_PramacMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=gnrc_CaptivaEnergySolutionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=gnrc_CaptivaEnergySolutionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=gnrc_PramacMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=gnrc_PramacMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=gnrc_CaptivaEnergySolutionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=gnrc_CaptivaEnergySolutionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854082800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Accumulated Other Comprehensive Loss (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember', window );">Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax', window );">Other Comprehensive Income (Loss), before Reclassifications, before Tax</a></td>
<td class="nump">$ 1,992<span></span>
</td>
<td class="num">$ (211)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax', window );">Other Comprehensive Income (Loss) before Reclassifications, Tax, Total</a></td>
<td class="num">(518)<span></span>
</td>
<td class="nump">55<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax', window );">Reclassification from Accumulated Other Comprehensive Income, Current Period, before Tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">802<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAociCurrentPeriodTax', window );">Reclassification from AOCI, Current Period, Tax, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(209)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember', window );">Accumulated Net Gain (Loss) from Cash Flow Hedges Attributable to Parent [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax', window );">Other Comprehensive Income (Loss), before Reclassifications, before Tax</a></td>
<td class="num">(18,732)<span></span>
</td>
<td class="nump">3,951<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax', window );">Other Comprehensive Income (Loss) before Reclassifications, Tax, Total</a></td>
<td class="nump">$ 4,877<span></span>
</td>
<td class="num">$ (1,027)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) allocated to other comprehensive income (loss) before reclassification adjustment from accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e39076-109324<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e640-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17B<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL34724394-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationFromAociCurrentPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) of reclassification adjustment from accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e640-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL34724391-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e39076-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAociCurrentPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842873104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document And Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Feb. 19, 2020</div></th>
<th class="th"><div>Jun. 28, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001474735<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">GENERAC HOLDINGS INC.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-34627<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">20-5654756<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">S45 W29290 Hwy 59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Waukesha<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">WI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">53189<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">262<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">544-4811<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, $0.01 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">GNRC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,191,188,195<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">62,567,525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 20-F, 40-F<br> -Number 240<br> -Section 15<br> -Subsection d-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentAnnualReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1-<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityPublicFloat</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityVoluntaryFilers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847851792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Significant Accounting Policies [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">2.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Summary of</b><b> Accounting Policies </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Principles of Consolidation</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The consolidated financial statements include the accounts of the Company and its subsidiaries that are consolidated in conformity with U.S. GAAP. All intercompany amounts and transactions have been eliminated in consolidation.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Cash </b><b>and Cash </b><b>Equivalents</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company considers all highly liquid investments purchased with an original maturity of <em style="font-weight: inherit; font-style: normal;">three</em> months or less to be cash equivalents.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Concentration of Credit Risk</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains the majority of its domestic cash in <em style="font-weight: inherit; font-style: normal;">one</em> commercial bank in multiple operating and investment accounts. Balances on deposit are insured by the Federal Deposit Insurance Corporation (FDIC) up to specified limits. Balances in excess of FDIC limits are uninsured.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">One customer accounted for approximately 9% and 11% of accounts receivable at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> respectively. <span style="-sec-ix-hidden:c56031461"><span style="-sec-ix-hidden:c56031455"><span style="-sec-ix-hidden:c56031458">No</span></span> </span><em style="font-weight: inherit; font-style: normal;">one</em> customer accounted for greater than 5%, 6%, and 6%, of net sales during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> or <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Accounts Receivable</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Receivables are recorded at their face value amount less an allowance for doubtful accounts. The Company estimates and records an allowance for doubtful accounts based on specific identification and historical experience. The Company writes off uncollectible accounts against the allowance for doubtful accounts after all collection efforts have been exhausted. Sales are generally made on an unsecured basis, and certain balances are protected by credit insurance.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Inventories</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Inventories are stated at the lower of cost or market, with cost determined generally using the <em style="font-weight: inherit; font-style: normal;">first</em>-in, <em style="font-weight: inherit; font-style: normal;">first</em>-out method.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Property and Equipment </b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Property and equipment are recorded at cost and are being depreciated using the straight-line method over the estimated useful lives of the assets, which are summarized below (in years). Costs of leasehold improvements are amortized over the lesser of the term of the lease (including renewal option periods) or the estimated useful lives of the improvements. Finance lease right of use assets are included in property and equipment. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> "Leases," to the consolidated financial statements for the Company's lease disclosure.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Land improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">8</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">10</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">2</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total depreciation expense was $32,265, $25,296, and $23,127 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Goodwill and Other Indefinite-Lived Intangible Assets</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Goodwill represents the excess of the purchase price over fair value of identifiable net assets acquired from business acquisitions. Goodwill is <em style="font-weight: inherit; font-style: normal;">not</em> amortized, but is reviewed for impairment on an annual basis and between annual tests if indicators of impairment are present. The Company evaluates goodwill for impairment annually as of <em style="font-weight: inherit; font-style: normal;"> October 31 </em>or more frequently when an event occurs or circumstances change that indicates the carrying value <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable. The Company has the option to assess goodwill for impairment by performing either a qualitative assessment or quantitative test. The qualitative assessment determines whether it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount. If the Company determines that it is <em style="font-weight: inherit; font-style: normal;">not</em> more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount, then the quantitative test is <em style="font-weight: inherit; font-style: normal;">not</em> required to be performed. If the Company determines that it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount, the Company is required to perform the quantitative test. In the quantitative test, the calculated fair value of the reporting unit is compared to its book value including goodwill. If the fair value of the reporting unit is in excess of its book value, the related goodwill is <em style="font-weight: inherit; font-style: normal;">not</em> impaired. If the fair value of the reporting unit is less than its book value, an impairment loss is recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other indefinite-lived intangible assets consist of certain tradenames. The Company tests the carrying value of these tradenames annually as of <em style="font-weight: inherit; font-style: normal;"> October 31, </em>or more frequently when an event occurs or circumstances change that indicates the carrying value <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable, by comparing the assets&#8217; fair value to its carrying value. Fair value is measured using a relief-from-royalty approach, which assumes the fair value of the tradename is the discounted cash flows of the amount that would be paid had the Company <em style="font-weight: inherit; font-style: normal;">not</em> owned the tradename and instead licensed the tradename from another company.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company performed the required annual impairment tests for goodwill and other indefinite-lived intangible assets for the fiscal years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> and found <span style="-sec-ix-hidden:c56031520"><span style="-sec-ix-hidden:c56031521"><span style="-sec-ix-hidden:c56031519">no</span> </span></span>impairment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Impairment of Long-Lived Assets</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company periodically evaluates the carrying value of long-lived assets (excluding goodwill and indefinite-lived tradenames). Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable. If the sum of the expected future undiscounted cash flows is less than the carrying amount of an asset, a loss is recognized for the difference between the fair value and carrying value of the asset.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Debt Issuance Costs</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Debt discounts and direct costs incurred in connection with the issuance of long-term debt are deferred and recorded as a reduction of outstanding debt and amortized to interest expense using the effective interest method over the terms of the related credit agreements. $4,712, $4,749, and $3,516 of deferred financing costs and original issue discount were amortized to interest expense during fiscal years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Excluding the impact of any future long-term debt issuances or prepayments, estimated amortization to interest expense for the next <em style="font-weight: inherit; font-style: normal;">five</em> years is as follows: <em style="font-weight: inherit; font-style: normal;">2020</em> - <span style="-sec-ix-hidden:c56031536">$2,598;</span> <em style="font-weight: inherit; font-style: normal;">2021</em> - <span style="-sec-ix-hidden:c56031539">$2,640;</span> <em style="font-weight: inherit; font-style: normal;">2022</em> - <span style="-sec-ix-hidden:c56031541">$2,689;</span> <em style="font-weight: inherit; font-style: normal;">2023</em> - <span style="-sec-ix-hidden:c56031544">$2,579;</span> <em style="font-weight: inherit; font-style: normal;">2024</em> - $2,508.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Income Taxes</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is a C Corporation and therefore accounts for income taxes pursuant to the liability method. Accordingly, the current or deferred tax consequences of a transaction are measured by applying the provision of enacted tax laws to determine the amount of taxes payable currently or in future years. Deferred income taxes are provided for temporary differences between the income tax bases of assets and liabilities and their carrying amounts for financial reporting purposes. In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that some portion or all of the deferred tax assets will <em style="font-weight: inherit; font-style: normal;">not</em> be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the years in which those temporary differences become deductible. The Company considers taxable income in prior carryback years, the scheduled reversal of deferred tax liabilities, projected future taxable income and tax planning strategies, as appropriate, in making this assessment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Revenue Recognition</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><br/> The Company&#8217;s revenues primarily consist of product sales to its customers. The Company considers the purchase orders, which in some cases are governed by master sales agreements, to be the contracts with the customers. For each contract, the Company considers the commitment to transfer products, each of which is distinct, to be the identified performance obligations. Revenue is measured as the amount of consideration the Company expects to be entitled in exchange for the transfer of product, which is generally the price stated in the contract specific for each item sold, adjusted for the value of expected returns, discounts, rebates, or other promotional incentives or allowances offered to our customers. Expected returns for damaged or defective product are estimated using the expected value method based upon historical product return experience. Discounts and rebates offered to customers are typically defined in the master sales agreements with customers and, therefore, are recorded using the most likely amount method based on the terms of the contract. Promotional incentives are defined programs offered for short, specific periods of time and are estimated using the expected value method based upon historical experience. The Company does <em style="font-weight: inherit; font-style: normal;">not</em> expect the transaction price for revenue recognized will be subject to a significant revenue reversal. As the Company&#8217;s product sale contracts and standard payment terms have a duration of less than <em style="font-weight: inherit; font-style: normal;">one</em> year, it uses the practical expedient applicable to such contracts and does <em style="font-weight: inherit; font-style: normal;">not</em> consider the time value of money. Sales, use, value add and other similar taxes assessed by governmental authorities and collected concurrent with revenue-producing activities are excluded from revenue. The Company has elected to recognize the cost for freight activities when control of the product has transferred to the customer as an expense within cost of goods sold in the consolidated statements of comprehensive income. Product revenues are recognized at the point in time when control of the product is transferred to the customer, which typically occurs upon shipment or delivery to the customer. To determine when control has transferred, the Company considers if there is a present right to payment and if legal title, physical possession, and the significant risks and rewards of ownership of the asset has transferred to the customer. As substantially all of the Company&#8217;s product revenues are recognized at a point in time, the amount of unsatisfied performance obligations at each period end is <em style="font-weight: inherit; font-style: normal;">not</em> material. The Company&#8217;s contracts have an original expected duration of <em style="font-weight: inherit; font-style: normal;">one</em> year or less. As a result, the Company has elected to use the practical expedient to <em style="font-weight: inherit; font-style: normal;">not</em> disclose its remaining performance obligations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">At the request of certain customers, the Company will warehouse inventory billed to the customer but <em style="font-weight: inherit; font-style: normal;">not</em> delivered. Unless all revenue recognition criteria have been met, the Company does <em style="font-weight: inherit; font-style: normal;">not</em> recognize revenue on these transactions until the customer takes possession of the product.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">While the Company&#8217;s standard payment terms are less than <em style="font-weight: inherit; font-style: normal;">one</em> year, the specific payment terms and conditions in its customer contracts vary. In some cases, customers prepay for their goods; in other cases, after appropriate credit evaluation, an open credit line is granted and payment is due in arrears. Contracts with payment in arrears are recognized in the consolidated balance sheets as accounts receivable upon revenue recognition, while contracts where customers pay in advance are recognized as customer deposits and recorded in other accrued liabilities in the consolidated balance sheets until revenue is recognized. The balance of customer deposits (contract liabilities) was $9,952 and $14,174 at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>respectively. During the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company recognized revenue of $9,589 related to amounts included in the <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>customer deposit balance. The Company typically recognizes revenue within <em style="font-weight: inherit; font-style: normal;">one</em> year of the receipt of the customer deposit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company offers standard warranty coverage on substantially all products that it sells and accounts for this standard warranty coverage as an assurance warranty. As such, <em style="font-weight: inherit; font-style: normal;">no</em> transaction price is allocated to the standard warranty, and the Company records a liability for product warranty obligations at the time of sale to a customer based upon historical warranty experience. Refer to Note <em style="font-weight: inherit; font-style: normal;">11,</em> &#8220;Product Warranty Obligations,&#8221; to the consolidated financial statements for further information regarding the Company&#8217;s standard warranties.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company also sells extended warranty coverage for certain products, which it accounts for as service warranties. In most cases, the extended warranty is sold as a separate contract. As such, extended warranty sales are considered a separate performance obligation, and the extended warranty transaction is separate and distinct from the product. The extended warranty transaction price is initially recorded as deferred revenue in the consolidated balance sheets and amortized on a straight-line basis to net sales in the consolidated statements of comprehensive income over the life of the contracts following the standard warranty period. For extended warranty contracts that the Company sells under a <em style="font-weight: inherit; font-style: normal;">third</em>-party marketing agreement, it is required to pay fees to the <em style="font-weight: inherit; font-style: normal;">third</em>-party service provider and classifies these fees as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income consistent with how the related deferred revenue is recognized. Refer to Note <em style="font-weight: inherit; font-style: normal;">11,</em> &#8220;Product Warranty Obligations,&#8221; to the consolidated financial statements for further information regarding the Company&#8217;s extended warranties.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition to extended warranties, the Company offers other services, including remote monitoring, installation and maintenance services in limited circumstances. Total service revenues account for less than <em style="font-weight: inherit; font-style: normal;">three</em> percent of revenue during the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note <em style="font-weight: inherit; font-style: normal;">7,</em> &#8220;Segment Reporting,&#8221; to the consolidated financial statements for the Company&#8217;s disaggregated revenue disclosure. The information discussed above is applicable to each of the Company&#8217;s product classes.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Advertising and Co-Op Advertising</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Expenditures for advertising, included in selling and service expenses in the consolidated statements of comprehensive income, are expensed as incurred. Expenditures for advertising production costs are expensed when the related advertisement is <em style="font-weight: inherit; font-style: normal;">first</em> run. Total expenditures for advertising were $44,153, $34,792, and $45,926 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Research and Development</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company expenses research and development costs as incurred. Total expenditures incurred for research and development were $68,394, $50,019, and $42,869 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Foreign Currency Translation and Transactions</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Balance sheet amounts for non-U.S. Dollar functional currency businesses are translated into U.S. Dollars at the rates of exchange in effect at the end of the fiscal year. Income and expenses incurred in a foreign currency are translated at the average rates of exchange in effect during the year. The related translation adjustments are made directly to accumulated other comprehensive loss, a component of stockholders&#8217; equity, in the consolidated balance sheets. Gains and losses from foreign currency transactions are recognized as incurred in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Fair Value of Financial Instruments</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10,</em> <i>Fair Value Measurement</i><i>,</i> defines fair value, establishes a consistent framework for measuring fair value, and expands disclosure for each major asset and liability category measured at fair value on either a recurring basis or nonrecurring basis. ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10</em> clarifies that fair value is an exit price, representing the amount that would be received in the sale of an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. As a basis for considering such assumptions, the pronouncement establishes a <em style="font-weight: inherit; font-style: normal;">three</em>-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value as follows: (Level <em style="font-weight: inherit; font-style: normal;">1</em>) observable inputs such as quoted prices in active markets; (Level <em style="font-weight: inherit; font-style: normal;">2</em>) inputs, other than the quoted prices in active markets, that are observable either directly or indirectly; and (Level <em style="font-weight: inherit; font-style: normal;">3</em>) unobservable inputs in which there is little or <em style="font-weight: inherit; font-style: normal;">no</em> market data, which require the reporting entity to develop its own assumptions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company believes the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and ABL facility borrowings), excluding Term Loan borrowings, approximates the fair value of these instruments based upon their short-term nature. The fair value of Term Loan borrowings, which have an aggregate carrying value of $812,953, was approximately $833,092 (Level <em style="font-weight: inherit; font-style: normal;">2</em>) at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>as calculated based on independent valuations whose inputs and significant value drivers are observable.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For the fair value of the assets and liabilities measured on a recurring basis, refer to the fair value table in Note <em style="font-weight: inherit; font-style: normal;">5,</em> &#8220;Derivative Instruments and Hedging Activities,&#8221; to the consolidated financial statements. The fair value of all derivative contracts is classified as Level <em style="font-weight: inherit; font-style: normal;">2.</em> The valuation techniques used to measure the fair value of derivative contracts, all of which have counterparties with high credit ratings, were based on quoted market prices or model driven valuations using significant inputs derived from or corroborated by observable market data. The fair value of derivative contracts considers the Company&#8217;s credit risk in accordance with ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Use of Estimates</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Derivative Instruments and Hedging Activities</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company records all derivatives in accordance with ASC <em style="font-weight: inherit; font-style: normal;">815,</em> <i>Derivatives and Hedging</i><i>,</i> which requires derivative instruments be reported in the consolidated balance sheets at fair value and establishes criteria for designation and effectiveness of hedging relationships. The Company is exposed to market risk such as changes in commodity prices, foreign currencies and interest rates. The Company does <em style="font-weight: inherit; font-style: normal;">not</em> hold or issue derivative financial instruments for trading purposes. Refer to Item <em style="font-weight: inherit; font-style: normal;">7A</em> of this Annual Report on Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for further information on the Company&#8217;s derivatives.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>S</b><b>hare</b><b>-Based Compensation</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Share-based compensation expense, including stock options and restricted stock awards, is generally recognized on a straight-line basis over the vesting period based on the fair value of awards which are expected to vest. The fair value of all share-based awards is estimated on the date of grant. Refer to Note <em style="font-weight: inherit; font-style: normal;">17,</em> &#8220;Share Plans,&#8221; to the consolidated financial statements for further information on the Company&#8217;s share-based compensation plans and accounting.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b/></p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>New Accounting Pronouncements </b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>New Accounting Standards <em style="font-weight: inherit; font-style: normal;">Not</em> Yet Adopted</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2016, </em>the Financial Accounting Standards&#160;Board (FASB) issued Accounting Standards Update (ASU) <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">13,</em> <i>Financial Instruments &#8211; Credit Losses (Topic <em style="font-weight: inherit; font-style: normal;">326</em>)</i>: <i>Measurement of Credit Losses on Financial Instruments</i>, which represents a new credit loss standard that will change the impairment model for most financial assets and certain other financial instruments. Specifically, this guidance will require entities to utilize a new &#8220;expected loss&#8221; model as it relates to trade and other receivables. In addition, entities will be required to recognize an allowance for estimated credit losses on available-for-sale debt securities, regardless of the length of time that a security has been in an unrealized loss position. This guidance will be effective for annual reporting periods beginning after <em style="font-weight: inherit; font-style: normal;"> December 15, 2019, </em>including interim periods within those annual reporting periods, and early adoption is permitted. The Company has established a project plan and an implementation team to adopt and apply the new standard. The Company is in the process of implementing necessary changes to accounting policies, processes, and controls to enable compliance with this new standard. The Company continues to evaluate the impact the adoption of this standard will have on its consolidated financial statements, and does <em style="font-weight: inherit; font-style: normal;">not</em> believe this new standard will have a material impact.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">There are several other new accounting pronouncements issued by the FASB. Each of these pronouncements, as applicable, has been or will be adopted by the Company. Management does <em style="font-weight: inherit; font-style: normal;">not</em> believe any of these accounting pronouncements has had or will have a material impact on the Company&#8217;s consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Recently Adopted </i></b><b><i>Accounting Standards</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> <i>Leases</i><i> </i>(Topic <em style="font-weight: inherit; font-style: normal;">842</em>). This guidance was issued to increase transparency and comparability among organizations by requiring the recognition of lease assets and lease liabilities in the balance sheet and by disclosing key information about leasing arrangements. The Company adopted this standard using the modified retrospective approach as of the date of adoption, meaning <em style="font-weight: inherit; font-style: normal;">no</em> prior period balances were impacted by the adoption. Additionally, the Company elected to adopt the standard using the package of practical expedients permitted under the standard&#8217;s transition guidance, which allowed the Company to carry forward its historical lease classifications, and embedded lease and initial direct cost assessments. The adoption of the standard had a material impact on the Company&#8217;s consolidated balance sheet primarily related to the recognition of right-of-use (ROU) assets and lease liabilities for operating leases. However, the adoption did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the consolidated statement of comprehensive income and statement of cash flows. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#8220;Leases,&#8221; for further information regarding the Company&#8217;s leases.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2018</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> <i>Reclassification of Certain Tax Effects from Accumulated Other Comprehensive Income</i>. This guidance was issued to address the impact of the change in the U.S. federal corporate income tax rate from the <em style="font-weight: inherit; font-style: normal;">2017</em> U.S. Tax Cuts and Jobs Act (the &#8220;Tax Act&#8221;) on items recorded as a component of accumulated other comprehensive income (AOCI). This guidance allows companies to reclassify to retained earnings the stranded tax effects lodged in AOCI as a result of the Tax Act. Upon adoption of the ASU, the Company elected to <em style="font-weight: inherit; font-style: normal;">not</em> reclassify the stranded income tax effects from AOCI to retained earnings.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2017</em>-<em style="font-weight: inherit; font-style: normal;">12,</em> <i>Derivatives</i><i> and Hedging &#8211; Targeted Improvements to Accounting for Hedging Activities</i>. This guidance was issued to improve the financial reporting of hedging relationships to better portray the economic results of an entity&#8217;s risk management activities in its financial statements and to make certain targeted improvements to simplify the application of the hedge accounting guidance. The adoption of this standard did <em style="font-weight: inherit; font-style: normal;">not</em> have an impact on the Company&#8217;s hedging strategies, and did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the Company&#8217;s results of operations and financial position.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> April 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2018</em>-<em style="font-weight: inherit; font-style: normal;">15,</em> <i>Intangibles &#8211; Goodwill and Other &#8211; Internal-Use Software: Customer&#8217;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That is a Service Contract.</i> This guidance was issued to address the diversity in practice related to the accounting for costs of implementation activities performed in a cloud computing arrangement that is a service contract. The Company adopted this standard prospectively, impacting all implementation costs incurred after adoption. The adoption did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the Company&#8217;s results of operations and financial position.</p><p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"/>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853896416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">$ 653,682<span></span>
</td>
<td class="nump">$ 573,795<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(484,269)<span></span>
</td>
<td class="num">(455,626)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">169,413<span></span>
</td>
<td class="nump">118,169<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IndefiniteLivedTradeNames', window );">Indefinite-lived tradenames, gross</a></td>
<td class="nump">128,321<span></span>
</td>
<td class="nump">128,321<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsGrossExcludingGoodwill', window );">Total intangible assets, gross</a></td>
<td class="nump">782,003<span></span>
</td>
<td class="nump">702,116<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Total intangible assets, net</a></td>
<td class="nump">$ 297,734<span></span>
</td>
<td class="nump">246,490<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trade Names [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-lived intangible assets, useful life (Year)</a></td>
<td class="text">9 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">$ 56,669<span></span>
</td>
<td class="nump">56,378<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(36,613)<span></span>
</td>
<td class="num">(32,416)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">$ 20,056<span></span>
</td>
<td class="nump">23,962<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerListsMember', window );">Customer Lists [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-lived intangible assets, useful life (Year)</a></td>
<td class="text">12 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">$ 369,932<span></span>
</td>
<td class="nump">368,343<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(314,380)<span></span>
</td>
<td class="num">(307,149)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">$ 55,552<span></span>
</td>
<td class="nump">61,194<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember', window );">Patents [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-lived intangible assets, useful life (Year)</a></td>
<td class="text">13 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">$ 131,086<span></span>
</td>
<td class="nump">131,030<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(110,554)<span></span>
</td>
<td class="num">(101,060)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">$ 20,532<span></span>
</td>
<td class="nump">29,970<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Developed Technology Rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-lived intangible assets, useful life (Year)</a></td>
<td class="text">9 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">$ 82,886<span></span>
</td>
<td class="nump">13,169<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(17,872)<span></span>
</td>
<td class="num">(12,058)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">65,014<span></span>
</td>
<td class="nump">1,111<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_ComputerSoftwareIntangibleAssetMember', window );">Computer Software, Intangible Asset [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">1,046<span></span>
</td>
<td class="nump">1,046<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(1,046)<span></span>
</td>
<td class="num">(1,046)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Noncompete Agreements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-lived intangible assets, useful life (Year)</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-lived intangible assets, gross</a></td>
<td class="nump">$ 12,063<span></span>
</td>
<td class="nump">3,829<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-lived intangible assets, accumulated amortization</a></td>
<td class="num">(3,804)<span></span>
</td>
<td class="num">(1,897)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-lived intangible assets, net</a></td>
<td class="nump">$ 8,259<span></span>
</td>
<td class="nump">$ 1,932<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedTradeNames">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount (original costs adjusted for previously recognized amortization and impairment) as of the balance sheet date for the rights acquired through registration of a trade name to gain or protect exclusive use thereof for a projected indefinite period of benefit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedTradeNames</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsGrossExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of intangible assets, excluding goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsGrossExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerListsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerListsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_ComputerSoftwareIntangibleAssetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_ComputerSoftwareIntangibleAssetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R98.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6856482912">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 61,870<span></span>
</td>
<td class="nump">$ 58,014<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset Category, Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_FixedIncomeFundsMember', window );">Fixed Income Funds [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,257<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset Category, Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_DomesticEquityMember', window );">Domestic Equity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,731<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset Category, Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_InternationalEquityMember', window );">International Equity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,380<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset Category, Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_RealEstateMember', window );">Real Estate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Fair values of the Pension Plan's assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,502<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations', window );">Asset Category, Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Fixed Income Funds [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Domestic Equity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | International Equity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Real Estate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Fixed Income Funds [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Domestic Equity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">61.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | International Equity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Real Estate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Asset Category, Target</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanFairValueOfPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of target investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of actual investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_FixedIncomeFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_FixedIncomeFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_DomesticEquityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_DomesticEquityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_InternationalEquityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_InternationalEquityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_RealEstateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=us-gaap_RealEstateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6840791168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Segment Reporting - Net Sales by Products and Services (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 590,932<span></span>
</td>
<td class="nump">$ 601,135<span></span>
</td>
<td class="nump">$ 541,916<span></span>
</td>
<td class="nump">$ 470,353<span></span>
</td>
<td class="nump">$ 563,404<span></span>
</td>
<td class="nump">$ 562,388<span></span>
</td>
<td class="nump">$ 497,581<span></span>
</td>
<td class="nump">$ 400,091<span></span>
</td>
<td class="nump">$ 2,204,336<span></span>
</td>
<td class="nump">$ 2,023,464<span></span>
</td>
<td class="nump">$ 1,679,373<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember', window );">Residential Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,143,723<span></span>
</td>
<td class="nump">1,042,739<span></span>
</td>
<td class="nump">870,490<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember', window );">Commercial and Industrial Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">871,595<span></span>
</td>
<td class="nump">820,270<span></span>
</td>
<td class="nump">684,353<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember', window );">Other Products and Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">189,018<span></span>
</td>
<td class="nump">160,455<span></span>
</td>
<td class="nump">124,530<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember', window );">Domestic [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,742,898<span></span>
</td>
<td class="nump">1,566,520<span></span>
</td>
<td class="nump">1,271,678<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember', window );">Domestic [Member] | Residential Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,086,019<span></span>
</td>
<td class="nump">980,707<span></span>
</td>
<td class="nump">796,237<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember', window );">Domestic [Member] | Commercial and Industrial Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">513,482<span></span>
</td>
<td class="nump">461,415<span></span>
</td>
<td class="nump">372,635<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember', window );">Domestic [Member] | Other Products and Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">143,397<span></span>
</td>
<td class="nump">124,398<span></span>
</td>
<td class="nump">102,806<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember', window );">International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">461,438<span></span>
</td>
<td class="nump">456,944<span></span>
</td>
<td class="nump">407,695<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember', window );">International [Member] | Residential Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">57,704<span></span>
</td>
<td class="nump">62,032<span></span>
</td>
<td class="nump">74,253<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember', window );">International [Member] | Commercial and Industrial Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">358,113<span></span>
</td>
<td class="nump">358,855<span></span>
</td>
<td class="nump">311,718<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember', window );">International [Member] | Other Products and Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 45,621<span></span>
</td>
<td class="nump">$ 36,057<span></span>
</td>
<td class="nump">$ 21,724<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R90.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853985824">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="nump">$ 21,053<span></span>
</td>
<td class="nump">$ 16,745<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsDeferredIncome', window );">Deferred revenue</a></td>
<td class="nump">14,697<span></span>
</td>
<td class="nump">12,418<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInventory', window );">Inventories</a></td>
<td class="nump">9,879<span></span>
</td>
<td class="nump">8,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions', window );">Pension obligations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,062<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Stock-based compensation</a></td>
<td class="nump">7,490<span></span>
</td>
<td class="nump">5,960<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Operating loss and credit carryforwards</a></td>
<td class="nump">28,356<span></span>
</td>
<td class="nump">25,585<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts', window );">Bad debt</a></td>
<td class="nump">1,094<span></span>
</td>
<td class="nump">1,363<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="nump">4,275<span></span>
</td>
<td class="nump">2,516<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="num">(5,024)<span></span>
</td>
<td class="num">(5,802)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Total deferred tax assets</a></td>
<td class="nump">81,820<span></span>
</td>
<td class="nump">68,347<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets', window );">Goodwill and intangible assets</a></td>
<td class="nump">142,159<span></span>
</td>
<td class="nump">108,899<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Depreciation</a></td>
<td class="nump">27,864<span></span>
</td>
<td class="nump">25,429<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts', window );">Debt refinancing costs</a></td>
<td class="nump">4,119<span></span>
</td>
<td class="nump">4,206<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses', window );">Prepaid expenses</a></td>
<td class="nump">1,073<span></span>
</td>
<td class="nump">950<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Total deferred tax liabilities</a></td>
<td class="nump">175,215<span></span>
</td>
<td class="nump">139,484<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred tax liabilities</a></td>
<td class="num">$ (93,395)<span></span>
</td>
<td class="num">$ (71,137)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsDeferredIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsDeferredIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from pension benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from the allowance for doubtful accounts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31931-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from intangible assets including goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPrepaidExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R94.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823589008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation', window );">Accumulated benefit obligation at end of period</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 65,978<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligation', window );">Projected benefit obligation at beginning of period</a></td>
<td class="nump">65,978<span></span>
</td>
<td class="nump">72,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanInterestCost', window );">Interest cost</a></td>
<td class="nump">2,401<span></span>
</td>
<td class="nump">2,575<span></span>
</td>
<td class="nump">$ 2,688<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanActuarialGainLoss', window );">Net actuarial (gain) loss</a></td>
<td class="nump">3,452<span></span>
</td>
<td class="num">(6,820)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid', window );">Benefits paid</a></td>
<td class="num">(31,321)<span></span>
</td>
<td class="num">(2,408)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased', window );">Annuities purchased</a></td>
<td class="num">(40,510)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligation', window );">Projected benefit obligation at end of period</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">65,978<span></span>
</td>
<td class="nump">72,631<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at beginning of period</a></td>
<td class="nump">61,870<span></span>
</td>
<td class="nump">58,014<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets', window );">Actual return on plan assets</a></td>
<td class="nump">8,944<span></span>
</td>
<td class="num">(3,507)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanContributionsByEmployer', window );">Company contributions</a></td>
<td class="nump">1,017<span></span>
</td>
<td class="nump">9,771<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid', window );">Benefits paid</a></td>
<td class="num">(31,321)<span></span>
</td>
<td class="num">(2,408)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased', window );">Annuities purchased</a></td>
<td class="num">(40,510)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Balance at end of period</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">61,870<span></span>
</td>
<td class="nump">$ 58,014<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFundedStatusOfPlan', window );">Funded status: accrued pension liability included in other long-term liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(4,108)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax', window );">Net actuarial loss, net of tax</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (10,541)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in benefit obligation of defined benefit plan from annuities purchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in plan assets of defined benefit plan from annuities purchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of actuarial present value of benefits attributed to employee service rendered, excluding assumptions about future compensation level.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated other comprehensive income (loss) for gain (loss) of defined benefit plan, that has not been recognized in net periodic benefit (cost) credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (j)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in plan assets of defined benefit plan from actual return (loss) determined by change in fair value of plan assets adjusted for contributions, benefit payments, and other expenses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanActuarialGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from change in actuarial assumptions which (increases) decreases benefit obligation of defined benefit plan. Assumptions include, but are not limited to, interest, mortality, employee turnover, salary, and temporary deviation from substantive plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanActuarialGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of payment to participant of defined benefit plan which decreases benefit obligation. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(6)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 60<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39716-114964<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanContributionsByEmployer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of contribution received by defined benefit plan from employer which increases plan assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanContributionsByEmployer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanFairValueOfPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFundedStatusOfPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of funded (unfunded) status of defined benefit plan, measured as difference between fair value of plan assets and benefit obligation. Includes, but is not limited to, overfunded (underfunded) status.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109237824&amp;loc=d3e1703-114919<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanFundedStatusOfPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanInterestCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost recognized for passage of time related to defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanInterestCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of payment to participant under defined benefit plan which decreases plan assets. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 60<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39716-114964<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847605136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 8 - Balance Sheet Details - Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw material</a></td>
<td class="nump">$ 328,021<span></span>
</td>
<td class="nump">$ 348,980<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work-in-process</a></td>
<td class="nump">10,387<span></span>
</td>
<td class="nump">6,971<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">183,616<span></span>
</td>
<td class="nump">188,799<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total</a></td>
<td class="nump">$ 522,024<span></span>
</td>
<td class="nump">$ 544,750<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116846819&amp;loc=d3e3927-108312<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.19.3.a.u2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>384</ContextCount>
  <ElementCount>595</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>95</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-consolidated-balance-sheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Consolidated Balance Sheets (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals</Role>
      <ShortName>Consolidated Balance Sheets (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Consolidated Statements of Stockholders' Equity (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Note 1 - Description of Business</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-1-description-of-business-</Role>
      <ShortName>Note 1 - Description of Business</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Note 2 - Summary of Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies</Role>
      <ShortName>Note 2 - Summary of Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Note 3 - Acquisitions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-3-acquisitions</Role>
      <ShortName>Note 3 - Acquisitions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Note 4 - Redeemable Noncontrolling Interest</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest</Role>
      <ShortName>Note 4 - Redeemable Noncontrolling Interest</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities</Role>
      <ShortName>Note 5 - Derivative Instruments and Hedging Activities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss</Role>
      <ShortName>Note 6 - Accumulated Other Comprehensive Loss</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Note 7 - Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-7-segment-reporting</Role>
      <ShortName>Note 7 - Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Note 8 - Balance Sheet Details</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details</Role>
      <ShortName>Note 8 - Balance Sheet Details</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Note 9 - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets</Role>
      <ShortName>Note 9 - Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - Disclosure - Note 10 - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-</Role>
      <ShortName>Note 10 - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Note 11 - Product Warranty Obligations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations</Role>
      <ShortName>Note 11 - Product Warranty Obligations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Note 12 - Credit Agreements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-12-credit-agreements</Role>
      <ShortName>Note 12 - Credit Agreements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Note 13 - Stock Repurchase Program</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program</Role>
      <ShortName>Note 13 - Stock Repurchase Program</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Note 14 - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-14-earnings-per-share</Role>
      <ShortName>Note 14 - Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Note 15 - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes</Role>
      <ShortName>Note 15 - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Note 16 - Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans</Role>
      <ShortName>Note 16 - Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Note 17 - Share Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-17-share-plans</Role>
      <ShortName>Note 17 - Share Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Note 18 - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies</Role>
      <ShortName>Note 18 - Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited</Role>
      <ShortName>Note 19 - Quarterly Financial Information (Unaudited)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - Disclosure - Note 20 - Valuation and Qualifying Accounts</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts</Role>
      <ShortName>Note 20 - Valuation and Qualifying Accounts</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Note 21 - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-21-subsequent-events</Role>
      <ShortName>Note 21 - Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Note 2 - Summary of Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables</Role>
      <ShortName>Note 2 - Summary of Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - Disclosure - Note 3 - Acquisitions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables</Role>
      <ShortName>Note 3 - Acquisitions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-3-acquisitions</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - Disclosure - Note 4 - Redeemable Noncontrolling Interest (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables</Role>
      <ShortName>Note 4 - Redeemable Noncontrolling Interest (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables</Role>
      <ShortName>Note 5 - Derivative Instruments and Hedging Activities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables</Role>
      <ShortName>Note 6 - Accumulated Other Comprehensive Loss (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Note 7 - Segment Reporting (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables</Role>
      <ShortName>Note 7 - Segment Reporting (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-7-segment-reporting</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Note 8 - Balance Sheet Details (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables</Role>
      <ShortName>Note 8 - Balance Sheet Details (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - Disclosure - Note 9 - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables</Role>
      <ShortName>Note 9 - Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Note 10 - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-tables</Role>
      <ShortName>Note 10 - Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-10-leases-</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Note 11 - Product Warranty Obligations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables</Role>
      <ShortName>Note 11 - Product Warranty Obligations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Note 12 - Credit Agreements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables</Role>
      <ShortName>Note 12 - Credit Agreements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-12-credit-agreements</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Note 14 - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables</Role>
      <ShortName>Note 14 - Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-14-earnings-per-share</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>041 - Disclosure - Note 15 - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables</Role>
      <ShortName>Note 15 - Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-15-income-taxes</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>042 - Disclosure - Note 16 - Benefit Plans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables</Role>
      <ShortName>Note 16 - Benefit Plans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-16-benefit-plans</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>043 - Disclosure - Note 17 - Share Plans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-17-share-plans-tables</Role>
      <ShortName>Note 17 - Share Plans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-17-share-plans</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>044 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables</Role>
      <ShortName>Note 19 - Quarterly Financial Information (Unaudited) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>045 - Disclosure - Note 20 - Valuation and Qualifying Accounts (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables</Role>
      <ShortName>Note 20 - Valuation and Qualifying Accounts (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>046 - Disclosure - Note 2 - Summary of Accounting Policies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual</Role>
      <ShortName>Note 2 - Summary of Accounting Policies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>047 - Disclosure - Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details</Role>
      <ShortName>Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>048 - Disclosure - Note 3 - Acquisitions (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual</Role>
      <ShortName>Note 3 - Acquisitions (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>049 - Disclosure - Note 3 - Acquisitions - Preliminary Price Allocation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details</Role>
      <ShortName>Note 3 - Acquisitions - Preliminary Price Allocation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>050 - Disclosure - Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details</Role>
      <ShortName>Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>051 - Disclosure - Note 4 - Redeemable Noncontrolling Interest (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual</Role>
      <ShortName>Note 4 - Redeemable Noncontrolling Interest (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>052 - Disclosure - Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details</Role>
      <ShortName>Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>053 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual</Role>
      <ShortName>Note 5 - Derivative Instruments and Hedging Activities (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>054 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details</Role>
      <ShortName>Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>055 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual</Role>
      <ShortName>Note 6 - Accumulated Other Comprehensive Loss (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>056 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details</Role>
      <ShortName>Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>057 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details</Role>
      <ShortName>Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>058 - Disclosure - Note 7 - Segment Reporting (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual</Role>
      <ShortName>Note 7 - Segment Reporting (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables</ParentRole>
      <Position>59</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>059 - Disclosure - Note 7 - Segment Reporting - Net Sales by Products and Services (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details</Role>
      <ShortName>Note 7 - Segment Reporting - Net Sales by Products and Services (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>060 - Disclosure - Note 7 - Segment Reporting - Segment Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details</Role>
      <ShortName>Note 7 - Segment Reporting - Segment Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>061 - Disclosure - Note 7 - Segment Reporting- Schedule of Error Corrections (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details</Role>
      <ShortName>Note 7 - Segment Reporting- Schedule of Error Corrections (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>062 - Disclosure - Note 8 - Balance Sheet Details (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual</Role>
      <ShortName>Note 8 - Balance Sheet Details (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>063 - Disclosure - Note 8 - Balance Sheet Details - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details</Role>
      <ShortName>Note 8 - Balance Sheet Details - Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>064 - Disclosure - Note 8 - Balance Sheet Details - Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details</Role>
      <ShortName>Note 8 - Balance Sheet Details - Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>065 - Disclosure - Note 9 - Goodwill and Intangible Assets (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual</Role>
      <ShortName>Note 9 - Goodwill and Intangible Assets (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>066 - Disclosure - Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details</Role>
      <ShortName>Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>067 - Disclosure - Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details</Role>
      <ShortName>Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>068 - Disclosure - Note 10 - Leases (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-details-textual</Role>
      <ShortName>Note 10 - Leases (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-10-leases-tables</ParentRole>
      <Position>69</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>069 - Disclosure - Note 10 - Leases - Leases Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details</Role>
      <ShortName>Note 10 - Leases - Leases Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>070 - Disclosure - Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details</Role>
      <ShortName>Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>071 - Disclosure - Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details</Role>
      <ShortName>Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>072 - Disclosure - Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details</Role>
      <ShortName>Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>073 - Disclosure - Note 10 - Leases - Maturities of Lease liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details</Role>
      <ShortName>Note 10 - Leases - Maturities of Lease liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>074 - Disclosure - Note 11 - Product Warranty Obligations 1 (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual</Role>
      <ShortName>Note 11 - Product Warranty Obligations 1 (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables</ParentRole>
      <Position>75</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>075 - Disclosure - Note 11 - Product Warranty Obligations 2 (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual</Role>
      <ShortName>Note 11 - Product Warranty Obligations 2 (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables</ParentRole>
      <Position>76</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>076 - Disclosure - Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details</Role>
      <ShortName>Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>077 - Disclosure - Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details</Role>
      <ShortName>Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>078 - Disclosure - Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details</Role>
      <ShortName>Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>079 - Disclosure - Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details</Role>
      <ShortName>Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>080 - Disclosure - Note 12 - Credit Agreements (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual</Role>
      <ShortName>Note 12 - Credit Agreements (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables</ParentRole>
      <Position>81</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>081 - Disclosure - Note 12 - Credit Agreements - Short-term Borrowings (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details</Role>
      <ShortName>Note 12 - Credit Agreements - Short-term Borrowings (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>082 - Disclosure - Note 12 - Credit Agreements - Long-term Borrowings (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details</Role>
      <ShortName>Note 12 - Credit Agreements - Long-term Borrowings (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>083 - Disclosure - Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details</Role>
      <ShortName>Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>084 - Disclosure - Note 13 - Stock Repurchase Program (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual</Role>
      <ShortName>Note 13 - Stock Repurchase Program (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program</ParentRole>
      <Position>85</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>085 - Disclosure - Note 14 - Earnings Per Share (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual</Role>
      <ShortName>Note 14 - Earnings Per Share (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>086 - Disclosure - Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details</Role>
      <ShortName>Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>087 - Disclosure - Note 15 - Income Taxes (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual</Role>
      <ShortName>Note 15 - Income Taxes (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables</ParentRole>
      <Position>88</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>088 - Disclosure - Note 15 - Income Taxes - Provision for Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details</Role>
      <ShortName>Note 15 - Income Taxes - Provision for Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>89</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>089 - Disclosure - Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details</Role>
      <ShortName>Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>90</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>090 - Disclosure - Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details</Role>
      <ShortName>Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>91</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>091 - Disclosure - Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details</Role>
      <ShortName>Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>092 - Disclosure - Note 16 - Benefit Plans (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual</Role>
      <ShortName>Note 16 - Benefit Plans (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables</ParentRole>
      <Position>93</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>093 - Disclosure - Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details</Role>
      <ShortName>Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>94</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>094 - Disclosure - Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details</Role>
      <ShortName>Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>95</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>095 - Disclosure - Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details</Role>
      <ShortName>Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>96</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>096 - Disclosure - Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details</Role>
      <ShortName>Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>97</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>097 - Disclosure - Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details</Role>
      <ShortName>Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>98</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R99.htm</HtmlFileName>
      <LongName>098 - Disclosure - Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details</Role>
      <ShortName>Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>99</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R100.htm</HtmlFileName>
      <LongName>099 - Disclosure - Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details</Role>
      <ShortName>Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>100</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R101.htm</HtmlFileName>
      <LongName>100 - Disclosure - Note 17 - Share Plans (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual</Role>
      <ShortName>Note 17 - Share Plans (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-17-share-plans-tables</ParentRole>
      <Position>101</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R102.htm</HtmlFileName>
      <LongName>101 - Disclosure - Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details</Role>
      <ShortName>Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>102</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R103.htm</HtmlFileName>
      <LongName>102 - Disclosure - Note 17 - Share Plans - Summary of Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details</Role>
      <ShortName>Note 17 - Share Plans - Summary of Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>103</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R104.htm</HtmlFileName>
      <LongName>103 - Disclosure - Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details</Role>
      <ShortName>Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>104</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R105.htm</HtmlFileName>
      <LongName>104 - Disclosure - Note 18 - Commitments and Contingencies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual</Role>
      <ShortName>Note 18 - Commitments and Contingencies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies</ParentRole>
      <Position>105</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R106.htm</HtmlFileName>
      <LongName>105 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details</Role>
      <ShortName>Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables</ParentRole>
      <Position>106</Position>
    </Report>
    <Report instance="gnrc20191231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R107.htm</HtmlFileName>
      <LongName>106 - Disclosure - Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details</Role>
      <ShortName>Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>107</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" original="gnrc20191231_10k.htm">gnrc20191231_10k.htm</File>
    <File>ex_172898.htm</File>
    <File>ex_172899.htm</File>
    <File>ex_172900.htm</File>
    <File>ex_172901.htm</File>
    <File>ex_172902.htm</File>
    <File>ex_172903.htm</File>
    <File>ex_172904.htm</File>
    <File>ex_173214.htm</File>
    <File>gnrc-20191231.xsd</File>
    <File>gnrc-20191231_cal.xml</File>
    <File>gnrc-20191231_def.xml</File>
    <File>gnrc-20191231_lab.xml</File>
    <File>gnrc-20191231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>compgraph02.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/srt/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/country/2017-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6834640000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Accounting Policies (Details Textual)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation, Total</a></td>
<td class="nump">$ 32,265<span></span>
</td>
<td class="nump">$ 25,296<span></span>
</td>
<td class="nump">$ 23,127<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetImpairment', window );">Goodwill and Intangible Asset Impairment, Total</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium', window );">Amortization of Financing Costs and Debt Discount Premium</a></td>
<td class="nump">4,712<span></span>
</td>
<td class="nump">4,749<span></span>
</td>
<td class="nump">3,516<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths', window );">Deferred Costs Amortization Expense, Next Twelve Months</a></td>
<td class="nump">2,598<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCostsAmortizationExpenseYearTwo', window );">Deferred Costs Amortization Expense, Year Two</a></td>
<td class="nump">2,640<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCostsAmortizationExpenseYearThree', window );">Deferred Costs Amortization Expense, Year Three</a></td>
<td class="nump">2,689<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCostsAmortizationExpenseYearFour', window );">Deferred Costs Amortization Expense, Year Four</a></td>
<td class="nump">2,579<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DeferredCostsAmortizationExpenseYearFive', window );">Deferred Costs Amortization Expense, Year Five</a></td>
<td class="nump">2,508<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with Customer, Liability, Total</a></td>
<td class="nump">9,952<span></span>
</td>
<td class="nump">14,174<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Contract with Customer, Liability, Revenue Recognized</a></td>
<td class="nump">9,589<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdvertisingExpense', window );">Advertising Expense</a></td>
<td class="nump">44,153<span></span>
</td>
<td class="nump">34,792<span></span>
</td>
<td class="nump">45,926<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and Development Expense, Total</a></td>
<td class="nump">68,394<span></span>
</td>
<td class="nump">$ 50,019<span></span>
</td>
<td class="nump">$ 42,869<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Fair Value, Inputs, Level 2 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFairValue', window );">Debt Instrument, Fair Value Disclosure, Total</a></td>
<td class="nump">833,092<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember', window );">Term Loan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt, Total</a></td>
<td class="nump">$ 812,953<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">9.00%<span></span>
</td>
<td class="nump">11.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Revenue Benchmark [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_NumberOfMajorCustomers', window );">Number of Major Customers</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of non-cash expense included in interest expense to issue and amortize debt discount and obtain financing associated with the related debt instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense expected to be recognized during the next fiscal year following the latest fiscal year for deferred costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCostsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense expected to be recognized during the fifth fiscal year following the latest fiscal year for deferred costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCostsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCostsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense expected to be recognized during the fourth fiscal year following the latest fiscal year for deferred costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCostsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCostsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense expected to be recognized during the third fiscal year following the latest fiscal year for deferred costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCostsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DeferredCostsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense expected to be recognized during the second fiscal year following the latest fiscal year for deferred costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DeferredCostsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_NumberOfMajorCustomers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents number of major customers that accounts for 10 percent or more of the entity's revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_NumberOfMajorCustomers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total loss recognized during the period from the impairment of goodwill plus the loss recognized in the period resulting from the impairment of the carrying amount of intangible assets, other than goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetImpairment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=gnrc_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854277344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock', window );">Schedule of Defined Benefit Plans Disclosures [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accumulated benefit obligation at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">65,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Change in projected benefit obligation</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Projected benefit obligation at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">65,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">72,631</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,401</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,575</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net actuarial (gain) loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,452</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(6,820</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Benefits paid</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(31,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Annuities purchased</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(40,510</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Projected benefit obligation at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">65,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Change in plan assets</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fair value of plan assets at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">58,014</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Actual return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,944</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,507</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Company contributions</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,017</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,771</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Benefits paid</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(31,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Annuities purchased</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(40,510</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fair value of plan assets at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Funded status: accrued pension liability included in other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(4,108</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Amounts recognized in accumulated other comprehensive loss</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net actuarial loss, net of tax</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock', window );">Defined Benefit Plan, Weighted Average Assumptions Used in Calculating Benefit Obligation [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average discount rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.24%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock', window );">Schedule of Net Benefit Costs [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 55%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,401</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,575</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,688</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expected return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,500</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,525</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,011</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of net loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">843</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">883</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,920</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net periodic pension cost (benefit)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,664</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(148</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">560</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock', window );">Schedule of Allocation of Plan Assets [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Target Allocation</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%; border-bottom: thin solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Asset Category</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Minimum</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Maximum</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Dollars</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>%</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Fixed income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic equity</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,731</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International equity</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,380</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Real estate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">6,502</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">100</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock', window );">Schedule of Fair Value of Plan Assets [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quoted Prices in Active Markets for Identical Asset</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 1)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Significant Observable Inputs</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 2)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">&#160;</p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Significant Unobservable Inputs</b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>(Level 3)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Mutual funds</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51,736</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">51,736</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#8211;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#8211;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Other investments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#8211;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#8211;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt; margin-left: 27pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">61,870</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">51,736</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#8211;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock', window );">Schedule of Effect of Significant Unobservable Inputs, Changes in Plan Assets [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>201</b><b>8</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 15%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,700</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Purchases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redemptions</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,795</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Realized gains</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">424</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,134</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=gnrc_NetPeriodicBenefitCostsMember', window );">Net periodic Benefit Costs [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock', window );">Defined Benefit Plan, Assumptions [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Discount Rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.24%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">3.60%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.14%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Expected long-term rate of return on plan assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">6.60%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">6.19%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">6.58%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Rate of compensation increase (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#160;</td>
       <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">N/A</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of weighted average assumptions used in calculating benefit obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the major categories of plan assets of pension plans and/or other employee benefit plans.  This information may include, but is not limited to, the target allocation of plan assets, the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAssumptionsUsedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assumption used to determine benefit obligation and net periodic benefit cost of defined benefit plan. Includes, but is not limited to, discount rate, rate of compensation increase, expected long-term rate of return on plan assets and interest crediting rate.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (k)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAssumptionsUsedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement plans.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2439-114920<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2410-114920<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2417-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the effect of fair value measurements using significant unobservable inputs (Level 3) on changes in plan assets of pension plans and/or other employee benefit plans for the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(02)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNetBenefitCostsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of net benefit costs for pension plans and/or other employee benefit plans including service cost, interest cost, expected return on plan assets, gain (loss), prior service cost or credit, transition asset or obligation, and gain (loss) recognized due to settlements or curtailments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNetBenefitCostsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=gnrc_NetPeriodicBenefitCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=gnrc_NetPeriodicBenefitCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847590544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Tax Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">15.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Income Taxes</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company&#8217;s provision for income taxes consists of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Current:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Federal</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41,686</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,072</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,753</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">State</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,211</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,639</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,775</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,660</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,546</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,585</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">48,557</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,113</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Federal</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,393</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,225</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,213</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">State</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,390</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,910</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,139</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,263</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">479</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,777</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,520</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24,614</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,575</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Change in valuation allowance</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(778</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,015</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,454</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">67,299</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">69,856</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">44,142</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company files U.S federal, U.S. state and foreign jurisdiction tax returns which are subject to examination up to the expiration of the statute of limitations. The Company&#160;believes the tax positions taken on its&#160;returns would be sustained upon an exam, or where a position is uncertain, adequate reserves have been recorded. As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company is <em style="font-weight: inherit; font-style: normal;">no</em> longer subject to income tax examinations for United States federal income taxes for tax years prior to <em style="font-weight: inherit; font-style: normal;">2016.</em> Due to the carryforward of net operating losses and research &amp; development credits, the Company&#8217;s Wisconsin state income tax returns for tax years <em style="font-weight: inherit; font-style: normal;">2009</em> through <em style="font-weight: inherit; font-style: normal;">2018</em> remain open. In addition, the Company is subject to audit by various foreign taxing jurisdictions for the tax years <em style="font-weight: inherit; font-style: normal;">2013</em> through <em style="font-weight: inherit; font-style: normal;">2018.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is regularly under examination in the various jurisdictions&#160;in which we operate. The Company is&#160;actively managing the examinations and working to address any open matters. While the Company does <em style="font-weight: inherit; font-style: normal;">not</em> believe any material taxes or penalties are due, there is a possibility that the ultimate tax outcome of an examination <em style="font-weight: inherit; font-style: normal;"> may </em>result in differences from what was recorded. Such differences <em style="font-weight: inherit; font-style: normal;"> may </em>affect the provision for income taxes in the period in which the determination is made, and could impact the Company&#8217;s financial results.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Significant components of deferred tax assets and liabilities are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred tax assets:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Accrued expenses</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,053</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,745</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred revenue</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,697</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,418</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Inventories</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,879</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,500</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Pension obligations</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,062</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Stock-based compensation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,490</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,960</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Operating loss and credit carryforwards</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">28,356</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,585</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Bad debt</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,094</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,363</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,275</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,516</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Valuation allowance</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,024</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total deferred tax assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">81,820</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">68,347</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred tax liabilities:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Goodwill and intangible assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">142,159</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">108,899</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Depreciation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">27,864</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,429</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Debt refinancing costs</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,119</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,206</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Prepaid expenses</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,073</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">950</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total deferred tax liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">175,215</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">139,484</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net deferred tax liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(93,395</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(71,137</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> deferred tax assets of $2,933 and $163, and deferred tax liabilities of $96,328 and $71,300, respectively, were reflected on the consolidated balance sheets.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains a valuation allowance against the deferred tax assets of an entity when it is uncertain the entity will generate sufficient taxable income to utilize the asset. During <em style="font-weight: inherit; font-style: normal;">2019,</em> the valuation allowance decreased by $778 primarily due to an increase in income allowing for a utilization of tax credits, partially offset by current losses in certain foreign subsidiaries.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">At <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company had various state research &amp; development and state manufacturing tax credit carryforwards of approximately $8,291 and $12,747, respectively, which expire between <em style="font-weight: inherit; font-style: normal;">2020</em> and <em style="font-weight: inherit; font-style: normal;">2034.</em> The Company believes it will generate sufficient taxable income in these jurisdictions to fully utilize the credits prior to their expiration.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Changes in the Company&#8217;s gross liability for unrecognized tax benefits, excluding interest and penalties, were as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Unrecognized tax benefit, beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,635</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,122</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Increase in unrecognized tax benefit for positions taken in prior period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">633</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Increase in unrecognized tax benefit for positions taken in current period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">495</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">580</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Statute of limitation expirations</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(43</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,818</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Settlements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(249</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Unrecognized tax benefit, end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">6,720</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,635</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The unrecognized tax benefit as of&#160;<em style="font-weight: inherit; font-style: normal;"> December&#160;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2019</em> and <em style="font-weight: inherit; font-style: normal;">2018,</em> if recognized, would favorably impact the effective tax rate.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of&#160;<em style="font-weight: inherit; font-style: normal;"> December&#160;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2019</em> and&#160;<em style="font-weight: inherit; font-style: normal;">2018,</em> total accrued interest of approximately $71 and&#160;$37, respectively,&#160;and&#160;accrued penalties of approximately&#160;$195 and&#160;$136, respectively, associated with net unrecognized tax benefits are included in the consolidated balance sheets. Interest and penalties are recorded as a component of income tax expense.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company does <em style="font-weight: inherit; font-style: normal;">not</em> expect a significant increase or decrease to the total amounts of unrecognized tax benefits related to continuing operations during the fiscal year ending <em style="font-weight: inherit; font-style: normal;"> December&#160;</em><em style="font-weight: inherit; font-style: normal;">31,</em> <em style="font-weight: inherit; font-style: normal;">2020.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> December 22, 2017, </em>the U.S. government enacted comprehensive tax legislation commonly referred to as the Tax Cuts and Jobs Act (the &#8220;Tax Act&#8221;). The Tax Act includes a mandatory <em style="font-weight: inherit; font-style: normal;">one</em>-time tax on accumulated earnings of foreign subsidiaries, and as a result, all previously unremitted earnings for which <em style="font-weight: inherit; font-style: normal;">no</em> U.S. deferred tax liability had been accrued have now been subject to U.S. tax. Notwithstanding the U.S. taxation of these amounts, the Company intends to continue to invest these earnings, as well as the capital in these subsidiaries, indefinitely outside of the U.S. and do <em style="font-weight: inherit; font-style: normal;">not</em> expect to incur any significant additional taxes related to such amounts.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A reconciliation of the statutory tax rates and the effective tax rates for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">U.S. statutory rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.7</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.1</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State tax rate differential</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Research and development credits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.8</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.4</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">State credits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.2</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Share-based compensation (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.6</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1.4</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Tax Act impact (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(0.2</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(13.9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(0.8</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(0.2</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(0.9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Effective tax rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">21.1</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">22.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">21.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">%</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">With the adoption of ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">09</em> in <em style="font-weight: inherit; font-style: normal;">2017,</em> excess tax benefits from equity awards are reflected within the provision for income taxes rather than within the consolidated balance sheet.</p> </td>
     </tr>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</td>
      <td style="vertical-align:top;">As a result of the Tax Act, we recognized a <em style="font-weight: inherit; font-style: normal;">one</em>-time, non-cash benefit of $28.4 million in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2017</em> primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from <em style="font-weight: inherit; font-style: normal;">35%</em> to <em style="font-weight: inherit; font-style: normal;">21%.</em>&#160;</td>
     </tr>
    </tbody>
   </table>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847855248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 19 - Quarterly Financial Information (Unaudited)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_QuarterlyFinancialInformationTextBlock', window );">Quarterly Financial Information [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">19.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Quarterly Financial Information (Unaudited)</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quarters Ended 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q1</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q2</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q3</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q4</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">470,353</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">541,916</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">601,135</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590,932</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">162,175</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">195,838</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">217,517</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">222,222</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">71,173</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">90,926</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">105,556</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">104,508</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44,861</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,958</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,574</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">69,614</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.77</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.99</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.14</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.76</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.98</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.18</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

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

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 605px;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quarters Ended 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q1</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q2</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q3</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 132px;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q4</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">400,091</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">497,581</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">562,388</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">563,404</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">141,927</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">178,473</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">200,334</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">204,306</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,347</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">85,467</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">106,519</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">108,848</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,645</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">53,261</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,776</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,575</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.42</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.83</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.21</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.42</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.82</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.11</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.20</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_QuarterlyFinancialInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -URI http://asc.fasb.org/topic&amp;trid=2126967<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_QuarterlyFinancialInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R106.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6848279328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 590,932<span></span>
</td>
<td class="nump">$ 601,135<span></span>
</td>
<td class="nump">$ 541,916<span></span>
</td>
<td class="nump">$ 470,353<span></span>
</td>
<td class="nump">$ 563,404<span></span>
</td>
<td class="nump">$ 562,388<span></span>
</td>
<td class="nump">$ 497,581<span></span>
</td>
<td class="nump">$ 400,091<span></span>
</td>
<td class="nump">$ 2,204,336<span></span>
</td>
<td class="nump">$ 2,023,464<span></span>
</td>
<td class="nump">$ 1,679,373<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">222,222<span></span>
</td>
<td class="nump">217,517<span></span>
</td>
<td class="nump">195,838<span></span>
</td>
<td class="nump">162,175<span></span>
</td>
<td class="nump">204,306<span></span>
</td>
<td class="nump">200,334<span></span>
</td>
<td class="nump">178,473<span></span>
</td>
<td class="nump">141,927<span></span>
</td>
<td class="nump">797,752<span></span>
</td>
<td class="nump">725,040<span></span>
</td>
<td class="nump">584,786<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">104,508<span></span>
</td>
<td class="nump">105,556<span></span>
</td>
<td class="nump">90,926<span></span>
</td>
<td class="nump">71,173<span></span>
</td>
<td class="nump">108,848<span></span>
</td>
<td class="nump">106,519<span></span>
</td>
<td class="nump">85,467<span></span>
</td>
<td class="nump">56,347<span></span>
</td>
<td class="nump">372,163<span></span>
</td>
<td class="nump">357,181<span></span>
</td>
<td class="nump">250,634<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Generac Holdings Inc.</a></td>
<td class="nump">$ 69,614<span></span>
</td>
<td class="nump">$ 75,574<span></span>
</td>
<td class="nump">$ 61,958<span></span>
</td>
<td class="nump">$ 44,861<span></span>
</td>
<td class="nump">$ 75,575<span></span>
</td>
<td class="nump">$ 75,776<span></span>
</td>
<td class="nump">$ 53,261<span></span>
</td>
<td class="nump">$ 33,645<span></span>
</td>
<td class="nump">$ 252,007<span></span>
</td>
<td class="nump">$ 238,257<span></span>
</td>
<td class="nump">$ 157,808<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net income attributable to common shareholders per common share - basic: (in dollars per share)</a></td>
<td class="nump">$ 1.14<span></span>
</td>
<td class="nump">$ 1.20<span></span>
</td>
<td class="nump">$ 0.99<span></span>
</td>
<td class="nump">$ 0.77<span></span>
</td>
<td class="nump">$ 1.21<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 0.83<span></span>
</td>
<td class="nump">$ 0.42<span></span>
</td>
<td class="nump">$ 4.09<span></span>
</td>
<td class="nump">$ 3.57<span></span>
</td>
<td class="nump">$ 2.56<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income attributable to common shareholders per common share - diluted: (in dollars per share)</a></td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 1.18<span></span>
</td>
<td class="nump">$ 0.98<span></span>
</td>
<td class="nump">$ 0.76<span></span>
</td>
<td class="nump">$ 1.20<span></span>
</td>
<td class="nump">$ 1.11<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
<td class="nump">$ 0.42<span></span>
</td>
<td class="nump">$ 4.03<span></span>
</td>
<td class="nump">$ 3.54<span></span>
</td>
<td class="nump">$ 2.53<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R102.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838230048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details) - Share-based Payment Arrangement, Option [Member] - $ / shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value (in dollars per share)</a></td>
<td class="nump">$ 19.33<span></span>
</td>
<td class="nump">$ 17.86<span></span>
</td>
<td class="nump">$ 16.84<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected stock price volatility</a></td>
<td class="nump">33.00%<span></span>
</td>
<td class="nump">37.00%<span></span>
</td>
<td class="nump">40.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk free interest rate</a></td>
<td class="nump">2.52%<span></span>
</td>
<td class="nump">2.60%<span></span>
</td>
<td class="nump">1.92%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare', window );">Expected annual dividend per share (in dollars per share)</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life of options (Year)</a></td>
<td class="text">6 years 3 months<span></span>
</td>
<td class="text">6 years 3 months<span></span>
</td>
<td class="text">6 years 3 months<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated amount of dividends per share to be paid to holders of the underlying shares (expected dividends) over the option's term.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
..report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

..report table.authRefData a {
	display: block;
	font-weight: bold;
}

..report table.authRefData p {
	margin-top: 0px;
}

..report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

..report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

..report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

..report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
..pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
..report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

..report hr {
	border: 1px solid #acf;
}

/* Top labels */
..report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

..report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

..report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

..report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

..report td.pl div.a {
	width: 200px;
}

..report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
..report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
..report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
..report .re, .report .reu {
	background-color: #def;
}

..report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
..report .ro, .report .rou {
	background-color: white;
}

..report .rou td {
	border-bottom: 1px solid black;
}

..report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
..report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
..report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

..report .nump {
	padding-left: 2em;
}

..report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
..report .text {
	text-align: left;
	white-space: normal;
}

..report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

..report .text .more {
	display: none;
}

..report .text .note {
	font-style: italic;
	font-weight: bold;
}

..report .text .small {
	width: 10em;
}

..report sup {
	font-style: italic;
}

..report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858770256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Derivative Instruments and Hedging Activities<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivative Instruments and Hedging Activities Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">5.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Derivative Instruments and Hedging Activities</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Commodities</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><i>&#160;</i></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is exposed to price fluctuations in commodities including steel, copper and aluminum; and periodically utilizes commodity derivatives to mitigate the impact of these potential price fluctuations on its financial results. These derivatives typically have maturities of less than <span style="-sec-ix-hidden:c56031756">eighteen</span> months. At <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> the Company had <span style="-sec-ix-hidden:c56031786"><span style="-sec-ix-hidden:c56031758">no</span> </span>commodity contracts outstanding.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Because these contracts do <em style="font-weight: inherit; font-style: normal;">not</em> qualify for hedge accounting, the related gains and losses are recorded in cost of goods sold in the Company&#8217;s consolidated statements of comprehensive income. Net pre-tax gains (losses) recognized were $(174), $(874), and $377 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#160;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Foreign Currencies</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is exposed to foreign currency exchange risk as a result of transactions denominated in currencies other than the U.S. Dollar. The Company periodically utilizes foreign currency forward purchase and sales contracts to manage the volatility associated with certain foreign currency purchases and sales in the normal course of business. Contracts typically have maturities of <span style="-sec-ix-hidden:c56031765">twelve</span> months or less. As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> the Company had <span style="-sec-ix-hidden:c56031767">forty-three</span> and <span style="-sec-ix-hidden:c56031768">forty</span> foreign currency contracts outstanding, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Because these contracts do <em style="font-weight: inherit; font-style: normal;">not</em> qualify for hedge accounting, the related gains and losses are recorded in "other, net" in the Company&#8217;s consolidated statements of comprehensive income. Net pre-tax gains (losses) recognized for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> were $(1,195), $(653), and $697, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Interest Rate Swaps</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;">2017,</em> the Company entered into <span style="-sec-ix-hidden:c56031777">twenty</span> interest rate swap agreements. In <em style="font-weight: inherit; font-style: normal;"> December 2019, </em>in conjunction with the amendment to its&#160;term loan, the Company amended those&#160;interest rate swaps to remove the LIBOR floor, which also resulted in minor reductions to the future dated swap fixed rates. The Company formally documented all relationships between interest rate hedging instruments and the related hedged items, as well as its risk-management objectives and strategies for undertaking these hedge transactions. These interest rate swap agreements qualify as cash flow hedges and therefore, the effective portions of the gains or losses are reported as a component of accumulated other comprehensive loss (AOCL) in the consolidated balance sheets. The amount of gains (losses) recognized for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> were $(13,855), $2,924, and $3,712, respectively. The cash flows of the swaps are recognized as adjustments to interest expense each period.&#160;The ineffective portions of the derivatives&#8217; changes in fair value, if any, are immediately recognized in earnings.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>&#160;</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Fair Value</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table presents the fair value of the Company&#8217;s derivatives:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,<br/> 201</b><b>9</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31,<br/> 201</b><b>8</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commodity contracts</p> </td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(160</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Foreign currency contracts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">31</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(117</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Interest rate swaps</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,425</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,307</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The fair value of the commodity and foreign currency contracts are included in prepaid expenses and other current assets, and the fair value of the interest rate swaps are included in other accrued liabilities and other long-term liabilities in the consolidated balance sheet as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>The fair value of the commodity and foreign currency contracts are included in other accrued liabilities, and the fair value of the interest rate swaps are included in other assets in the consolidated balance sheet as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>Excluding the impact of credit risk, the fair value of the derivative contracts as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> is a liability of $10,588 and an asset of $8,220, respectively, which represents the amount the Company would pay or receive upon exit of the agreements on those dates.</p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -URI http://asc.fasb.org/topic&amp;trid=2229140<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847647872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Goodwill and Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Intangible Assets Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">9.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Goodwill and Intangible Assets</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The changes in the carrying amount of goodwill by reportable segment for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">621,451</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">100,072</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">721,523</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Acquisitions of businesses, net</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,788</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,788</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,656</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,656</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">621,451</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">143,204</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">764,655</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Acquisitions of businesses, net</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37,758</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,078</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40,836</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Foreign currency translation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(207</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(207</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">659,209</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">146,075</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">805,284</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note <em style="font-weight: inherit; font-style: normal;">3,</em> &#8220;Acquisitions,&#8221; to the consolidated financial statements for further information regarding the Company&#8217;s acquisitions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The details of the gross goodwill applicable to each reportable segment at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Impairment</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Impairment</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,162,402</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(503,193</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">659,209</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,124,644</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(503,193</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">621,451</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">150,686</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4,611</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">146,075</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">147,815</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4,611</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">143,204</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,313,088</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(507,804</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">805,284</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,272,459</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(507,804</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">764,655</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table summarizes intangible assets by major category as of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018:</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Weighted Average</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Amortization Years</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Amortization</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net Book Value</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Gross</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Accumulated Amortization</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">Net Book Value</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 30%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finite-lived intangible assets:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Tradenames</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,669</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(36,613</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,056</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,378</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(32,416</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Customer lists</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">369,932</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(314,380</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">55,552</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">368,343</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(307,149</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,194</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Patents</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">13</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">131,086</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(110,554</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,532</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">131,030</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(101,060</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,970</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Developed technology</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">82,886</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(17,872</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">65,014</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,169</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(12,058</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,111</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Software</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,046</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Non-compete/other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 7%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12,063</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,804</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,259</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,829</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,897</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,932</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total finite-lived intangible assets</p> </td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">653,682</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(484,269</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">169,413</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">573,795</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(455,626</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">118,169</td>
       <td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Indefinite-lived tradenames</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">-</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">128,321</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total intangible assets</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">782,003</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(484,269</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">297,734</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">702,116</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(455,626</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">246,490</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Amortization of intangible assets was $28,644, $22,112 and $28,861 in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Excluding the impact of any future acquisitions, the Company estimates amortization expense for the next <em style="font-weight: inherit; font-style: normal;">five</em> years will be as follows: <em style="font-weight: inherit; font-style: normal;">2020</em> -&#160;<span style="-sec-ix-hidden:c56032088">$31,237;</span> <em style="font-weight: inherit; font-style: normal;">2021</em> - <span style="-sec-ix-hidden:c56032090">$29,473;</span> <em style="font-weight: inherit; font-style: normal;">2022</em> - <span style="-sec-ix-hidden:c56032092">$22,226;</span> <em style="font-weight: inherit; font-style: normal;">2023</em> - <span style="-sec-ix-hidden:c56032094">$18,344;</span> <em style="font-weight: inherit; font-style: normal;">2024</em> - $16,156.</p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847584064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of Product Warranty Liability [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41,785</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35,422</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">31,695</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Product warranty reserve assumed in acquisition</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,062</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(26,096</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(20,029</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(18,861</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Provision for warranty issued</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,060</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">26,910</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,347</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Changes in estimates for pre-existing warranties</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">505</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(518</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,198</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">49,316</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">41,785</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">35,422</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at beginning of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">68,340</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">57,854</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36,139</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred revenue contracts issued</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">24,483</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,440</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,262</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of deferred revenue contracts</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(14,085</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(10,954</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(7,547</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Balance at end of period</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">78,738</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">68,340</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">57,854</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,535</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,798</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,705</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,367</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">20,333</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">78,738</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock', window );">Product Warranty Obligations Included In Consolidated Balance Sheet [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Product warranty liability</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion - other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">27,885</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,396</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Long-term portion - other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">21,431</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">16,389</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">49,316</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">41,785</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred revenue related to extended warranties</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Current portion - other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,519</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,646</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Long-term portion - other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">63,219</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">54,694</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">78,738</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">68,340</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Product warranty obligations included in consolidated balance sheet.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of expected timing for satisfying remaining performance obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6839974160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Segment Reporting (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Net Sales by Segment</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Year Ended December 31, 2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Domestic</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>International</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Total </b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,086,019</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">57,704</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,143,723</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">513,482</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">358,113</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">871,595</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">143,397</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">45,621</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">189,018</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,742,898</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">461,438</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,204,336</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">980,707</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62,032</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,042,739</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">461,415</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">358,855</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">820,270</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">124,398</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,057</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">160,455</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,566,520</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">456,944</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,023,464</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, 2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Product Classes</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Domestic</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>International</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">796,237</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">74,253</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">870,490</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">372,635</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">311,718</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">684,353</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">102,806</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">21,724</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">124,530</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,271,678</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">407,695</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,679,373</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Reporting Information, by Segment [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Adjusted EBITDA</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">428,667</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">388,495</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">282,450</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">25,448</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">36,057</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">34,850</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total adjusted EBITDA</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">454,115</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">424,552</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">317,300</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest expense</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(41,544</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(40,956</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(42,667</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Depreciation and amortization</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(60,767</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(47,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(51,988</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash write-down and other adjustments (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(240</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,532</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,923</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-cash share-based compensation expense (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(16,694</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(14,563</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,205</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on extinguishment of debt (3)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(926</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,332</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement (4)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,920</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Transaction costs and credit facility fees (5)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,724</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,883</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,145</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Business optimization expenses (6)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,572</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(952</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,912</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">879</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(850</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(761</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income before provision for income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">319,607</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">311,076</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">203,699</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Assets</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,123,251</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,868,554</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,612,607</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">542,418</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">557,760</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">413,358</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,665,669</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,426,314</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,025,965</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Depreciation and Amortization</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,145</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35,586</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,764</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,822</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,026</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">60,909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">47,408</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">51,988</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Capital Expenditures</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Domestic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">36,007</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38,242</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,258</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">International</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24,795</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,359</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,003</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">60,802</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">47,601</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33,261</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock', window );">Schedule of Error Corrections and Prior Period Adjustments [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2019</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2018</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;">2017</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 43%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Residential Products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,129</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,924</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,888</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr class="GFJY4-DCU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition" style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Commercial &amp; industrial products</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,724</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,651</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,940</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">998</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,230</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total Net Sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,851</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,805</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,828</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Adjusted EBITDA</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">984</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">190</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,840</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8721-108599<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>82
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6609815328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Acquisitions (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>June 1, 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accounts receivable</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,302</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Inventories</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Prepaid expense and other assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,323</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Property and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,572</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Intangible assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,631</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,196</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,252</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">597</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total assets acquired</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">115,873</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accounts payable</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,216</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Accrued wages and employee benefits</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">397</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other accrued liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,671</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Deferred income taxes</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,974</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other long-term liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,643</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net assets acquired</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">79,972</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock', window );">Business Acquisition, Pro Forma Information, Nonrecurring Adjustments [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31,</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net Sales:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,204,336</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,023,464</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,679,373</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,206,952</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,067,737</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,755,358</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,007</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">238,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">157,808</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">248,335</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">230,379</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">151,764</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Net income attributable to Generac Holdings Inc. per common share - diluted</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">As reported</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.03</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.54</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.53</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Pro forma</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.97</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.41</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.44</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the nature and amount of any material, nonrecurring adjustments directly attributable to the business combination(s) included in the reported pro forma revenue and earnings (supplemental pro forma information).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>83
<FILENAME>0001437749-20-003516-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001437749-20-003516-xbrl.zip
M4$L#!!0    ( &F'65"VP(BP"[H! +CB 0 /    8V]M<&=R87!H,#(N:G!G
MQ+MW5!/KVRX<%45 C$A3$&(#5(1LE;*E)%M1$1 C%A 08D,(B%A (H1D*R44
M(=O*3U B(DW$B! 0A$0(@:ULI(,$(<U"B\PHA-ED,ISQ_<XZWS_GCV]][SKK
MA#60M6:X\]SMNJ]KYLG\QWD)9H7G/H]]F 4+%F!.HC^8>2EFZUXJY1P&X^V-
MV8+!8):BY[9A%J+OM-'#!#TP[I=#0BY<"8N*QLP/8=Q^_>]_Z_7+R'_7QH+Y
MMQB]I0M^+NI<M& ]9J'>@D5Z"^:;,3@,9L'B_^<"S/]\+5BX2&/Q$LVE6MHZ
MZ 7<%9B%"Q8M6JBQ:/%B#0WT; )Z'J.AMWCENFV[ENC[G-)<?\E@^_5;^4LW
M[*YH-#S<!6S<<?KR#2UM(^-5JTTL+*TV;=YB9^_@^/M.)[<]>_>Y[_?P/'+T
MF*_?<?^ ,V=#SH6&4<*O1,=<C:5>BTM,2DYAIJ:EW[YS]][][/\\R'E2\+2P
MJ+BD]-FKRBIN=<WKVKHF0;.PI?7O=^^[>WK[^@<^#HJD,OGG+U^_C8Z-@S]^
M3L\H9Z%_YW[YM0"SZ'^Y_K_U2P_U:Z&&QB(-S5]^+5@8^^L"/8W%Z[8M6;G+
M1_/4)?WUVZ\O-=A]*[^B46O#CL. X>G+7=I&&^VD%N OU_[+L_]OCMWX_^79
M_W+L__5+A%FV: &:O$5Z&"(&038]2<?\=P[K5CH!Z<0M881T).5MAR94?]#<
M@&]-'4DCF)[LPZ!?IHO/U7[1!?:R@16#@P&"-3[M\:7C=85J875N05A=4/G7
M\N?AL;YU5Q^$Q%R[M P_>0Q.G,<T#COE?H+7S6-N7(!=P;S\*T7T#L8*Q@6^
M]G$XAJTZF.#HP7;KF7[MVST4N*UM<?W]2V$F[$SNV=OCQ[PV3]^MO_GTEM83
MC!JOOCN/D4CG,9 E7Y$,=KPE5LXVS6.,:"<[ZT/!"W,J3VCO<YHG9"/'+J9N
MD-$YQ:)/P9\H!#W0^Y.C;Q0]4F&[3"]BV^C$)9>(T&6L>#NC'Y_4I;],DB#+
MXDDV6"!$+:;1XD$K68>0Q)P$:9Z=Q%!^<MX&B!L!R,9'0A-]>N!3+T;G,><Z
M)V-<#0?.O2D:'#>>K;,7F.IZZD1Z6F?\SB#1UT,ZC?15T&8J@H%")!%M[,21
MA?TS\YCK=;JL9+O-YUVL9,1ED.,19F.F)#!L^M]\0-VK]862$_0AV; >$)UH
M:*B\=F0[\>>I><R2>"C^K0D'U@^590NCK+P&Z ZPI_H9?0NQ%6L\OD1\&"RJ
M+/$?HQO4=CZGD4I/K.9ZV/ :RSY-^/9GOUIZEC? S=Q[AC+UO>CN(F6;9!8V
MO*-<"?VK,J,=5-?Q]&GAE2#S+?$&LAK$IO&V!GT,$]51Y=)1H.6F2%G\&"J6
MJH7/@ZUZ7/;-7?2H:B $XJP#LJBVT1EOAC;[CC]%$QK+:#PZCSG#@+;@DWGK
MJ<5*3[ FU64/6SNFP=@-'$F48Y>.CVB#MJG(QI=UO2[.I=79STJ-XQQJC-C/
MA*=*!C^1](,H3LGU$QI_/;X#]7;:92YJPJTF2J;X2VAZ53W3XL&?),A8YO^Y
MF_9;1J1$82T[_AJ,"#>YFAURLJQ@D)M5$P_:"FTB?2U>I?0I;-9[';]Y28Y6
MG#-O!Y6(+)6#;8A6K8H,C7RA;59M1D^X$R7WQI[ 9WL/G#.S[9&+)[])58K
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
M_NKJT7$O]R?]*V[#%QBD7C\0U6JZ;T!T5F2JHJ"!O0VYB/8QE)F(H"M AO(
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
M0N,!N"J#.EQG^;A,M!G>D($"RN@A&V2'>P&_%P"EV89#)@Z"Q;P[I8Q$E4.
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
M]:#(Z/-/1L8',%IB>Q[U!EW>HN/ MIXQ#Z T3>Q0JC^,'V-\1V >PIW[,K
MHS0;PT--38HT2<V.E3"9I-[DJ#0FBMRA?,%VZ 6@P"K<GGD*0M!T!J0KB-U8
M=3MY'BF%I/BP]T(=%!L)Q)Z%SG +T/8DAK75(@Q:<V$H];HLTYJ$BOB0*>D3
MR1TSM"5A*\2"=];@H)VCZ+@X"@(PN-DA#A]W$^:[0?S.S"FQ&S<3E19OUH);
M)L9UVT4#N!9@/":&L\K"WO#X8*,C]RY0=R.@#JC@I%IV*AU,/&]%+?8,/765
M^*,;FXG=" L.3AJI"BX[:$<ILR$3N4Y\#J!,"0!=X0:0Q(#!R%UG%U;I>ZDW
ME%XF#NBV.Z60:JDE,G$[!GQ\S']=,;<]6OM F'I-XZONZOX^_;IKNM$K4AK@
MS%M!/*Y2$)_<3$JGO"3?@*NFW!'*%)E!"MQ!!G8UL0O')Z5@UU.$=:^@6TC&
ML.R&+\]&R(DG.<C[B3<UN\Y1GD>FGQU80B )'L\]OJLCN2*RJD_80 R((+[O
MQGZ,3<+@R!FPJC%]#0^G)NMP\L![6UPF;8L$GD @1_:Q[6!S@36?DX'>0MC9
M+?87T(=4N"5E07'%^(4C4-03*/\(%!#Y>)RF#]TJKTP'PAL]FW!3Y&L1C4Z)
M]VA)?20NM5>\%UJ6*'(51THH\[@5!&4("\Z>A@Q%^R 18Y%,GKTB47'H;S1\
M%$I71.\F;.R2;A;K0?X"5"86*787N"E#0;S<S/#*QKU<SCI(BV6376QLI6/0
M8V?_-'3E,M%YASA<LYDZ?@G11EE%1.&'^>2K4V@-:(%5N+&W\2 ?DQJ/RSC5
M^AR_>\S])L<;'T]293P.KJUO+2L9_\GVGG175U<L,7A>-[ 8,/JXE!%>YKMX
M!Z%ZPN%?CSN#39W.?1;"+BPN98C,"82FC-;%B8^V3.#Q>_V>X6- YHTS=??.
M& Q]VZS\UFKGEHX+H9@ZAYE;I9Q0-G6J'^QU[;5H=\Z4.!ZG 5.UM3%69_]J
M8O6/]'\0EJU1%P*'?W185+YHTS1OD%\^R)V7YJ!7\4J]"H@[F:?NZD1O\1+K
MMW[<><= <')>EY&=?],+$ABN:/IJ4(,Y4\REI/^3UG-'1[OXA/OQ*[?Y:S>.
M4:J=FG?@]I[ZEKN[>M/IRJF>>!3Q!/8V]L78=+G + .+LO/DT=-^VI.3B;LK
MQM*EJX,72$%G@6!@FL;@IE=>.,+JF&GB!3\ #]K>UCI;-:!;)S>]:J-$'ZH
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
M/*AN()DQGJXQV;W@W+?%^9;PCNJR7[=*2<T&]$#DFI EQ.IP]":((LR"G$A
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
MI9814Z]]BL=VTB/$=G3:OEQW*XH/]+D/J'.46$7=RMKB+[R-_?W=VQ7^RZ#
MW[$J" 68'$Z+G?Y*BW^"ZFI@*"OF:4%JPQ3F34Y/A169U9&_%/D&&JYV=^G<
M/?RRE37Y4'L7SR;T=25)8!4@ $E^$G29P$4W6GC)U4@Y^[UH'P1/GE(/S'="
M^B+7GS#XEL[^5B>P]_//DYS3V29ER%KL]N?53ZN+K6KQ(.]6QM(^""^!.8!!
M\]V'KI72-]0?J(?X&N4]$ODE^:,=C08;G1W%3D'WOH4X#PRD%/SKN@'QW.RP
M_[7!%@;QGT'5?(]]4 !@YV**L9'6LW_92A/_Q];UIO^V%<O"M-5X30Y)$*-J
MUCWN_FMLFW$47^I-_SZ*?L=<QM;J=,YUD IS@M!]T.'U$0SBQWW3(4O&CM@N
M9?WG HW- <N"EB<:1/BVS/=!C;J(AKJ!MR__6 $< 2@'Q*:3$NA#ZS0)K,/4
MWM\C@.Z-T)!-G;_-D<24*C(MY]U+ "Q/L=L-V=S*=_JUKF64L0.B_C]7:OHM
M+O>.9"K+;0-VB-?\V%I8[O[7TD:T<NOIP?]U<<5_G/)+]3S3)*:Q)6&:P;N;
M_]FIK5YT*<3![2]_+PR,H/Z?[9IX,C&2&< 'F@)TK=(D,$93=4QO-V C Q<G
M,![_[R/Q:N=^8L9HZNUH?A[3'_ZKXTQ?_\+<!-I[3)&))1^"6&W@/R.AR,,
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
MH5\D4@#FRV0DJ%PO_KEW([3\\#B@IJ>)R4B3R@LL8J=_,8E:UO:2;VGZ/2X
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
M/ BFGG9=O;)G"O<D+ZQB2#X4-'D=YQ/O($%_T7@*+O150VX62*E@-N]&3AM
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
M=B0;9Z6"U3Y&\B0V1-WHFAHW+3IGDL/FF6OAP3]9^!!=EYDH*5TZ]]&G5LN
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
M+/CB+"R7%*KBYQ7D.@N4$)>M?XQJ) E8_;,Y87+)UE!R+O'4#,X!K*(_87Z
MGY5E%0%F"'->O\U_3W XCB%Y5 %($S^[*K:H],[&H:2^($KA3;G6%9?HJ-(
M<;S4@Q.)#*5IIB +_&R/(7X97Q(,P!W27KQ891K]/J*0..G+15=!399<[1T/
MU(-1?]+#[K?T ND5]>Z(%*..SH+#3RN64]M8X>H-?6BQ<M!ZZ:?NDHG)>U/1
M/DSV_[9*WCKJU<C@19I,_[?F7'NE^0M5OVOU1OA*7,DI4/9L<@2,#PD#OOZ:
M*?69W3N(&C$7OM,[H=&@$G$Z\.3N%O&^OUCJ/)*\.S,_L\F!CRT?+M'U;OL^
M/J+'\S[45"?9O_[:HA\Y7BKA72QEU')AM=,@%NS.KIV+VK]4>.=^:*K;G[NS
M,V@?A/F+NCLBN)ODDHNT*9+5,:2V!$I6>#"1N=;:HJK\"?$\?,'M1W>F>=WD
MS/!.Q_86W0BI<%2+$O8K%4%Q!HCAVE;3;!P N82)X L(,Z+[F=G';2OG CJ6
MQ0&IK#J$RU"!_DORK2MTLYGPA1Z3A_C)BS_UVDK.Y+)+O\)SLG[V6WQ'!T,@
MC(0?ADLQ5(\*&,9T,20;>'UUBPN"'J" %&@JU@K0I=_O'E=18QA6J\6IE1*8
MD,^MXEP6:UOW)J[T9 V:U=ZN3',[X/#=LRCTZV(QRKD7="/0C(PF8!)76)ZQ
MBH&UPP>7KI.JTEHS1+ZC.?5XG^#/XZ ?NZ6:"]Z*<2TG!9#AO-^M?)T'0SAN
MH<TG]+3?$B/\PJ*".8CK[+-;>_,!S',Y_S4S.FJ"^:;YT(J/WN#X$5EDN<'2
M"[Y,\<\'"%6<'.(8<I=:/)T1%]ZI$7C1F+1TUGWR8E/X9,,_,:3PC9V+7:^D
M?CAR[1"G/QY#JKS!#-XF$4Y-%.?0DUFV==Q,QJQB")1[5<^HWYHP1>A(KLKS
M"!/K"G)1-I> 7R9XMCRNDS1">%G9?O!PKO>_#]87:HX\Z:R/?CS[$KBQRU$2
MWOSQS/5D64+;#4EW?\>/!-[,U1;_EFSYX;GI/H]K.D'^;6YW/;,5%"/0>1GS
ML(%C2#NSG(H9@$O"@M5 %6%6+N9AW?66R"MYI/]VDFU!^*QV$."2BZ,^4;4N
M&\SSO6!PC9LC(G->4G_H1TCXLN#4,23L\8KO5(%G+QT#2G=LXUGW9QQ0&T(+
M,V?1Y]50%YE3)3I'2?M9@.<P\RJPW )D$6'\ULSA.X!^&2DMJD]?).4N=3A!
M[QEY*P7/O3S\UN\5J\;FCNK_$/O$OM;L<93LAV[RV<ZK0(J D?2;F.T=:I8]
M*$U]W2]'R(A?5J2Z9U LN1"FFV>QKR(D%1>(,X>+=77O5<NKS2/JQ_3F&[9G
M9[/<W2U5/GYBCJ]FQ*]PXT0W?FQ N1BG5O$)A[8[_&.5"+F!>6A<^.\2@6L#
M/YV^VVL)_<!:M<@\!EHN7[.[R*>DK(R,;$@9L!U#92[+SG[8L(AS]>&DEMB0
M,/'8Z_D#Q14NRA_55W@0//& R'8>O^SV-4<)=WT65%H7<]Y;^UH%_6<HQ-W)
M.N>QJATI(T'4",H?4Y-0<IW7,E4GZQ;!H2X^1ZWA08O$K^0ZDN_#JP=OZSRV
MZCL*U)-#JLSG5UZ6LL-6.W03=LJ!ZP.P$Z@SJ $X]3[TI&^I8(0=%<_0P"2B
M>!?\I'A!.\'%T'MZ<+)6[NY/DXX)Y8DS+K_A@T_S[ALHZ1?3"@\Z8BSSCR'^
M1S9,#A/2'LN<+Z!X46/_O:Q'+,V <B-OAE4L(&"4CE28;S%//U,88'&Z:N&S
MR!HB*6_F3;3BS)A-;\\$DQA!5FN/F_Q6\-VY%6>+GHX3_*D7L#IV%I$&9T^A
M.*[-M<NQ&6]V1L2-@0E71F:$YVT;%.U"73%:A*]@07.=O76NMF!,0UJVM,7+
M05V!FLF,0@+28XBAE.<P\L-"-MX=T)E.:T@E4-<Y[(>7K-($C7)AU]__U N2
M2K:R2=,5*7B29C9J:!$A"UOGH.4=)<-6RPM^;0/TFYLLI'2(Q?$L,,=Q<N,[
MJF@_# <C',1C$"D$/'=$3\-9RZYH;=):4]D78@6BT/(=<&+Z<=O-D<GJ>Y\-
M*_6S\X"VI=5#2]HY%OVLUI2RX[WP\PY]<"A.!O4!=P'<H,AVXXX*L5;4.L*R
M/!"<@&4CFQU#.%R_F-4SS%IF'VO<1%\@>-4;_!/]TF)2>7="*1IVOX1&L7>I
M#E2BU2:G\U'E!H+8/I4-NLKVBUXQ*3%@=V&36&"/?=LBFS X81O"R_Q<(TK!
MN"L>B VJ^FE7%*=CCR'IG3^3?;%0WI!A0>^YQ[V%N5:)H[4$^1QGVT4%LI1+
M0IJ$(N;,DJ.M[625\[3"CS8!?$GP"]A_?3N4].OHALBK8 8]@KE\##F!]U5[
M6<*IV]"1C!+\#H?HW:K:E%*;4 L? 0*K^LEW]: D%6.#3*ZG 5QWW196+&HD
MBUX=I<-;_ZU*.GJ+7TU&MR<08>DKO+A+2'&6-+Q:0/*#3F0TKW[5:D;L/'I[
M:Y5.MTPXY#<XV4_JU#S7IN11/_QP0][-FB:(F[*+G?U6Y:-Y)#?NOGQSH)3[
MNJN]W-51A%+\3[T1<6=-(+_2(VOUVK-*];<*=V*EE*XUW''\^*>'49'"@&:
MQ;74RYDF2HC7CQ<2G^1[<99R$;&>!BH$VQQ7+;X$%EB<UXF\V664IBO*"J15
M"C=LP\M$)B/D=(NP/[/00]"_+B:LJM8 -VGHHS?Z6LA+5)XAGCCGZ=TLBILG
MK1DL0%U O"3OQC_TTRA-AG)_*B>-K' C)DFSR3M>G7F$$(2VXU30_I,6,.S^
MN$;4D<[&QJ$<2^+Z0&& 0H0W6^[TD(-C8 (1&7_9H":9^KIYVY/ 36OJ:>?T
MXG)_*6&J?M(JEP$E+PX))2^HJ/X:=!< 4T)(6S=[A>& ?L*;32G9]J9C2&SE
MREVZX*><L&CZ3W)&0@D$&.P.9VI2M5\RX/H9"H4FA40IT7'D;=6\:UZ>JL57
M&KR>TJQS[3QEFY)2%(N^GM_R_#.)3_Z5=+J&(R5=\]RK-Y#J_WA-\:_:6LA]
M".0$G)VT,K[^$JM!+AI.UHD4+KK3[A$WM%K[8/,A14*Z++WA_(_4ZL\51KR(
M9X2CG/$T-8_([=^7%Z&+0%4*\AE9RB2/.B9D3]JV,,FT)\R^=S]U9?!!2Y$
M=2[B<65F;K#>I*#S&P2GH:E.RAWUP:DT3G,3Q2F%SF.(+KHY@<&'89Y7HJ[0
M$JFS*2SY.88L^*SZ[-RDPVK!S& I\#QZCO('M31=SSRJQK?@[?,_#R.3&+!R
MW[QNKZ6.),SCMI0EH^BG]-&VR>41NFYP>UX[=6Q>CB; &H2?-O!B*)DM>,MZ
M''ZUN$0#Y']&D31%QTOQSN[BY$&SH7F?F(I2L2NEY)M5OH&EMDU-=QT<L!W
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
MDU6CR16OA@7MJY1M<OS;JIS#>DT^V0096?=Y>,DIW D-#<3Y'WQM_-7JYB"
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
MRR(?S#*DI88FV]P<3 &U.(9!E6'C&/1U=^^+'BHQ5MCX?9-+CZ'+Y,\B\1>
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
MLR> V92R>)N.$K6:YW5/LC72S=VVQBK+6U7-T"KZ%C>:77S'B@8';V/\H2<
MSAEZ8U/WAG4)=,$$XO7*![EA&\?43_Y3.8;C=+4OA19" C/$-\O[T'.#2OPT
MK\\OP1'MH$KEX>SK"TYWO(H9[N.[G(2%"^.!8]OO9^4C/\8ZN">O\\S@2#Q;
M_2R]A%+,NY4-J:PQO9V%6QZ7'*)BM;D_>!700$L&)23(!1\]H99OH+Q]VZEV
MN8\P_R629V5KQUS3U^\C2KM*?MO/9R['[0P0EQM;FJ9C5*MYGNDHVYCW[/ -
M[[<9;C@(<8)(]U6D@-)+"M\*8D94*QL3),Z!,=W]PP[C!8HW&^[[DA#55F)V
MIQRC7&Y;)$E=K;!\V^6V<N.*E0W4H+"L<Z0PWTS!RG3$6&&;A7%%#IYQ9^=]
MEI,N%(@59MC9+^DS]]O^4Z[;_W<[KALH@3A+NW</;D-))D*B[MY**.D&GF^7
M*CC[-LI35<+0KO&LH,5,O/M?]GD"2WM )H=, /T?9.>]$\!CW.LC5)*..V6<
M)-QI#H1% >,@G!CD3'U/)HH[F(<O+-FXXQMCE->(U&:JW7] D:S6UO\(BS9-
MMDNV:DIYI0@-K53Y 9:"Z[(FTY8UB]8#OU)\4#5LV]<IX >82Y6'/#$G@ :Y
MG@I8>\LY3_9#6+NLFHG OHJ*5%/&F%A%C,M]4\$E$WGUW_Z@7O,"0W:2[^.\
MB[2B[F85M?RM\D=:H+=P[2'8OF9^5,^WDKC!\@D'O<>4\QE@=ML\V43M]QPO
MBBQS]172UD23=^K,N77^)3UI30I^]_28HT5(*O?!:-#]-:4O=5DC:2MF]45)
MP[47[BO;CY6Q=STK<D4P/("Q:DACYI\<3"[+Y]U B,>"B1K'K;C'HSQ&0F2_
M780>0Q7:YSTSN<1R[]VI/^:,T>+A V_9I67$.%YD'0T21[N3 7 (63.2*<M0
MHF1&,2_!=2A5J0%5-)->+,^4$N8$P 5+-FR=NSCQ/!%BED4:H,[,2%Z75FWL
M=T\1T1@4^W0"4$&<80U @SF@ZGMM%A;"9/] OT93O/]*R\/%G33?L30J%F^7
M1!(3F;]% L5I%VV.4D?G=!-_19Z+EZH33VWIZ",!MTZS@C93"EN\"H.3;,?D
MB"1[4:\>I^A<R1 %=^Y& .L#/M_4O;S_&<$UGC%NHB?^X!WL18#J@J/F-6R9
M7#Q&'K3CGT=U@EZ3'_^TP$XRC]9Q-VB ZQ+!$C5[G38%"C--L7/LX8M*%6IX
MNT3O/CK_Z>0A9&/Y5)%ECD=,!HC=(.+*1+12R8T9&,,&']ITUK++7"29Z$SG
M3ZBP31ULOA.KNG.QQV,GS0WL\^'14PRR_LI8V<B2T;?>Z3+Y7J-Q"V/S#7-"
M-I/SUY]24,<I>CJP-:HWA=E&R>Y9$$6(FQ83:+A.'*<>!PW?^\PGL[4QN61S
MZH5)>:BV_[O0ZSXOB]*[DSW" @-$TKJ\]M\M0;A93CX\ JZXQ"*B\9K_/08(
MR_ 1SQ<==Z",OF4*P07(/1/^/?#OAQ!)QH-H"UCZBR^C ?G.*TZ^;.G2B8C^
M-I9"X/"+E-/%D:6T!6HLK9X$CKVZGJ6/2T)<*5S@WFXW7_IQYSX&0SZF%L%;
M<:_;]?T*#<LV'[17NS^4U-4Q/_[@IG:^1[Q@KIV=?HG9K\=&SL L;J*%%DA<
MU3$9@>@-'']P* -2]:,S4$?[;B-U^I=\@&2\=X#;GN4TGDJXS^MB<E-?5,01
M&R#<PU1R3^TB+X1+BCSMRA>\[? K!J% 08I;]TT4=^3L<^C(?)Z3)Q[KG%:R
M'N_^-K@9V*A:+)2K'UV1T&V6BK;;N/H=R/GTN;?-$"TZ:7_.QIA%,S\OAYZY
M@V^^KQLZGK 2'HKURPX\<[F^P&(@\KZI3M)Y% A39-IKK$@<?;- M@4G@R^
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
M<I"G$LO4<7$-*/[-;WAWHHO>'J>RZPB>R0>-\1N;GQVQ8[+_J474=?SZZPD
M+PM_^>=5E,5/N#,'F:J.#(GC"J80S F/%%@>VYY(&W_2'EP*;)S?.#,ETQC%
M7")14WUT#U8WD#PUB>=/ "[6=ILZH \/F[VBZI(XR[KF)'K@P'</K_[V=,+/
M!>%O0(0>="W6-!"-(Q5$,OQN-R*CT[6?&MGA/0\"^=+7M.NRGR$UWZ_-S'MD
MK8K\N+]PM<LS-$]3\/W2-1';RP[Z-T@4S%I,]T1)^" 6_29?%%-NANA-$A5P
M'YJ0[]4PI+BC_]0T/@$\1+/U03\B.[U9<L34(?IP O [+Y4/<0F9"_6[T7IR
M<&6**_IBTHB?-0QO1.Y-);G<OO&HR3/.E)TI!:R=P71M[.TF.AV)':.J63UD
M AM1D=N'"S/)W;B_$/+>C82P"'=SF@7I\3<,DMNGU0^#+DK,R%],E*7K3S,N
MG<XM;:@31900CZ4[1?N\R9?,E9%W&"Z+"V=97)991 1)PJSP" UR5?TIQPVF
M".5%9!$M%7^$KD_0Q19]VM1H:O4[.,?.Q3794%NS48P[@_0!TS1P3/892G1W
M .7ZHEDN18PJ09OQNPGYR>(J8(_D"QNN')B:R7-1UG_BE\L^57!=-\S,#([(
M(\G=_NZ#R0))C7-G+4?Q()!RD]T$M*3R5W[7X24K@H5E_][N>9I&QJ7QYS^0
M6WJ7(H*&T,^,GZ>10XNAVL\]B1Q\R:VA+1H!W7.@^&YW6HA6K\?W=N<;UV#M
MU6*Q_4'BUKJ?*K8V27M':=AZH'='M;+'A=;X#U@_\XE8G!O/3)Y]@LDBVE*\
MD4RAC?>>&PCQ_\R_&63XYEN0"*%=7MRF.AI5*_<9&04\_QP2BQ <PWR'&Q)W
M&QN30,&IH1Y>&ODEKNN:FAQHWZ:4+P1$0:@_WZL9Y<_O6UY_*=VDB2]P@A>7
M%VARED(T!TK XB^&8,FB9VP'D1S=<_,>%LC\^L";?.[LMGKV,>3^A+KRK8L/
M>/WU+L'OY%GQJ:#RU::Y_'5#%OL8XCBZRJTE14@XCOR YRU0$KF8 Q;%H]$[
MB11\9]ZER7; K[A>$9DZ2D8FD<[U;,'T5<+EC=:%M\_1H@M!8HG.MX0)A31C
MR.V <^1F!E 0%DS,C,AQ@<CT/!@FBS1%AYXQ-8Q1'3+CK@S4NN^'D(QR2:?H
M\?#?+KSDJ"Z3/EEB7'2S?&_%$ND Z>4Y3X&)FUEE448OF)]*PD]VDL@.52'O
M237O<_0N9Q>Y1A3%=$_G:]M<G).3#!X6&G>L7VAGL;$S=&8W%G1<J.-$M^PG
M[1(4@#&NJI3J6#BRDN9N2\OW(RU$:KI>IKAO\$&!4#(D3D>SS'7>1\^S1(>
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
M]VSPB@*6ZTBBMA1Y,@\XJET0LQ?\J2,K<%R>+D9B',>,R\^O'#>7S=?>5F?
MJW=!H6E4W;LOO5_]DD$[!.=9$#26(MJ*&>J :CWS]@9Q(6M(^\+ MGR#M]3
MN<XR]-$5]31GK+D.0HM@5%1^]R-#/X'L-OE+_8:UP04RXZ8#?UVN0G[U08@Z
MFG9.2X!KZEW?^?[%Z=[$%QCZ^>+RN+PUJ#;J?!O A4 [^:P,^35&&4T_G\+@
MU;6EAU/';RAH!V^;,IM2#"A+'#NAMHR1@$81[K@IRVY/45<>@TBCTA*&4NK(
M&3UT^(\J#G0?=)"7R>$$P'#G3@4@;90[GY/* ;^K&&%W[3/VH1B^WXEDW4;7
MI9%NZ'R;+5<S:K R0Q1G>=_B$YG3N-&LNS7IV:2-"Q8QU="ATDI]V.XV\;)S
M^<1(B2C9Q@X<^5!W7W7UG)/B&PHRL[A.\WO&T7(K=[_,5;D,-2Z3&T>]DP!A
M*N?1?-?=_G/L]6K\0HO$(*:@]\[M?FUS'7/=6]/36M*%(-.DD#-)(?N.Z9U^
M=O1<WR:Y__C?*OA_/6[9VEI;6K<%!/GNSRFN42X;'C$4KL,JY+?IRW1_UA4\
M.Y$^>/=H;JIA>8)7U?V$6J_YA,5]J^83+0N 1MV?#\3!EOG=Z58EO6+[/D(\
M&&5HML( 4^?,OM"K*#3ULKQ?I*MT9P]*8:UTJ<H1N=37GPP"H>.S>L>42B<Y
MEQBG'&@"ZR]2QW4!/S 4ZZN4'B1BMYM^50]3%#Z@!66'\+6HCG/8&A</6=";
MV;W&4GA4*O.*X(Z6LINIE"9LI]C2,II#\TK'QSGA4'(,@3W9==0G/>BH2.LK
M.^PNB#BXX%DK_\ID R,I:BCK^;"WF>S6EM0? Z0L9&:TV(A$R,Z[S$#/\G_4
M-*1T<L"E=; T< S6X!W<@$#T,X2\+Z&G6?24"PLV\S7/E*H8FDUV?^^7^#8B
MOI)Y)":5>1]#3F&<VMYV*D0+(]QW7@'4^ :YIZ]2>4N P"G:0FEI*M1@OQ$I
M&U=DW])OME'(S=/R*(MQC;I T1.Y)%$NU@:T25R _B+M98K-J>(N[.#QGIU#
MX/55VD,;[2#_@XW@2*O2YP@N"<I+V#8X?+["F(>>9EA1?5+?X1.M]ZAN1T)S
MN^0NR'KG^A@CLS.*8?0MRT1NN0TNO2=N7.;1[2IE$77HH.8E]MHOS7=7L#=Y
M;?H3?G;.78S"?*TWK5JA.)_21%$%%J0#YVY<+H>,[KS#C^%15'WHX%=[(KUJ
MO9'*%8N]>F_YZB[H4&F]AY?/N.0GWP!N@F4QZ:GRB ?AL9+(#?VBN2WGPB.H
M;.=Q+NH^$M6WLY&$EKV,8? "N')IVQ79&V_CK(P6AE=IHT*!S<+,SHCAU$N2
M,A%7*E*)JO=6KOH73C?JL"?,CG"]Q7_"@_!C2?94(^/!$)FAL91Y-ZI @U7L
MLVO)HV(X*@0S#CTA9EU)AZ$$X7-,'A]^ S_TBNQP3=MPS$N)>E$<,^XBY7K4
MV>ZS6;?B6P1?7-<^87K]%I_I%=#YIZ"QP_R!9)';N9;UIW2;_!-KFGS#>5JD
M&U2+?>@Z9$]5D9IHM^IK"*"DQMNE1T3:P'?&&[O>X5.X=#/LZ8K8;-RL],3
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
M)T4JI5+VT09.IWU4@*8)W[[Y64N$NG7M]4>:0EK[X#K\NZ'OA):,"925C*W
M&3+J/GF@ZB[L'P'B(,5 M(K?]B%ERZ>$13+&)>L]PRYY:^9/1@X;\\[X3"P
M!4FNXF#M[F9P3HX>:P5MH 9F8.*]RCM"PYOZRC([K%!(1:Y6 :$H9E*'%EAN
M)2'=SMPLKZ\.)OPQ/J#TT)%7"\MR6N9I-;8"Z:Q"A3(,P0Q$Y!'KC1F.B9 )
M:,9]HJQ^C,VFI,7S5>5;!S4SI+I)+D ,,/-T%C4"/A,T_]B2'5$7<5V>S<K5
MRQD624TTG>1M!?[JE1V,]Q*0N]#QR4L2T0#3/G9P1&D@2660;R6(#Q*Q8!9F
M3OQE7+6R*10 MV]LVP6!%?25K:O<V%QXI'A]AM8#'U_UG3"4N?T%QYI=M)^)
MDOKC%37P=8-[<22;\W6<*N]!P.Z&]7"@.8\NKQ]KJ8#QD#=@[,!]$L #(&MJ
MAW,#W-B\16-?O/]X+\VYG&G[([ZQ < CKR_1-IO8(M@?:NY?>/@&</DE\E#*
MQ67)(2^UE(=MW'^H D@8KVSM8D:#XI]LY1FJ^#X%D'@\#_=ISQ.Y0UYR;2EZ
MKT6DNK_M XSJ#W4"A0;MMZ[H_BU\FCOB5?C! Y=H'I)#N1;&?XB^2="R6;1_
M\W @D$KAI$HUITO=![A>';KWP QA=0%@7F. ",N>3W@@GK*(\(+FD-"GEWXQ
MSW\_RS[%[<N,N%(K*LA:5=#?F!>)7Y:!IS&#D0.[H"LQ4ZV;O@,+X&GXMOWB
M68A4=POC<__V+NA'*<5IPRMT<";;?UGOEGH:>O5JVL=[)?\:'[QG@+V!:P':
M5<@^A3GW]-:EP!77ZIH#Q\"\,T[B3<4T+ MH6G9L:T94 8M)R3T*&$4$L:5F
MQHJ;!8(TH/:5 ,!,^2$E(D!3V 69>E?) LS[V/&!6#-BL,I:&S=A=?KO_)?2
MWJ&I0'%B%NS[@G#2TR@3RD=[(V:JK)MP9!&)O_.S$(M/-]^PT!+5=Z6*D^7-
MZ0&O-\O;'T.AQBVKQ1]6I-;)Q;\@];T^"2#3I1_>F9?3L#,!5_DWN\;M6+M,
M RQ]_K(< O8)W7J= !NJTO/:U+TMTCZ*""&'_TB]Q*T#)&3M'R8=J@20H9.9
MJ9QL"/ ]0+B;UFJ!BR)G-5O%X@7^SO< Z5;_P_0]]^^A,CT?I;],YX5/KXC\
M"S5OXS4>LVAD%S0^K'/_CYVH]C*VCN1ZII]+(>OE/[A);5+69P/Y>(%%I #A
MXU,F/0>SU=Y@5!"E\@'$"TS=-Q/Z'U$L8>!G15ID+/PA,:"Y?2386L5BIYN%
M$YXCZT^%BQE=QW/4_R<5D5[[A_&7192#6:2KV%V:-+&X,A!4/RG^4)'SK[D?
M_5ZI^D.B$*ULG[_(5EO!<V0J=^;TBEB<[E^A;!)DA7*J=0K&8N8_#FN5PTC)
M\8CB-.P:25S$45?L;V0W #%6TP DJ,LNZ([H]>W',P>1?SF4G'%8$8T=^;O.
M^2.RY-/26=M&?4@Z\T=DR8N^7I_JB/;K\@D5T>;Z>^+\Z- $_'4F*7[=OC%S
M$+5TZO@01E6VIPFW+_#/P8P#$MD;..FV2=C?\E!]J%(A6YB$O7?'&_$MP$87
M-V)UBY74T)H!B.T?+D;^I@Q^BCT]M?&"3TR#S/DPK3@I1Y@%I>#C;DZ7HJW'
M'[.T)+CV@:P1D/K,U0G?C7?MWR=_G0S9!;%#4G9!FA4X=O"R-#TM_PM_'M,!
M,/GMM'0U+:?]HY(YZVAW0=3$&=1*F_4<>I-?$Y#44*CS+NB=+F-MBOD%E8-J
M*5WZ  7HE27)EZ_L@N*=&D<6.?-W0:]UP74G+\T<D(N3C4BM847K;SBS@@84
M^4WUX>!7#_SBH$&MG7K0[CA9?+ N0WS+LF6Q N>["U($E';4&!&]^0+5>3MQ
MYY>"WZ\*4:=_U1_XI'_I!'("LE-?"? T:&>Z#29T6G1F?4CQQU5 1B^P^I&R
MDRR<VFHE#CY*/^VU,YNP_6F"4#EI6/GC<P8K'<(!*B?N^]>-2WIQS^.%TUZ-
M$0:++4GLUI&JUC4W&H!R!M#6&D!;%H6FB/AU[O5F 3C\5RO>)Y%;?W+P2/RW
M?]U9?<+_U5G=#%S&GF/U3 [C3JR>*4@RK2U,;R24)37^<(<&BSM:T1#=6#7O
M[@,_E#V=@5;-,,%XHD7<^^\.J_ZT:G\I@YN!"Z*2.UO7-N$*:FF37LL"3IT3
MV?%ET4 %K'L!*V2DUV(5*/=W07;W+39\N@5<CA@"+>+Z@UN=$Y&.\JSH+0.$
MD,@BP]% @+B<@,G+E:-%_N8R?=)K6WW> WW..>(+BS3;AH#R[Q3S7@+*7V']
M^6DTDM5VGL!TK*@&IYWUUGPO8[W%.E=[%AO_$3NJ++&3R(1<#[N\O1JZ3)M0
M>WM_:-WQEDV@CL7S/\MT!$ B0V=D%(BWTP*'V!^98[%7=24F3;OVN 'Z7$[$
M'WW1]E?W"=CJV;)L42V-#_5%6 (J-!8[LHWLF!#[LIR=K.*+,,ZI_ %P%]/H
MC\]=4&GD)!HX0\\&G09;5C>K!4U1CL_Z5^PZ $%)>P.%#62Q/4='&D#9WF*Q
M+VH__3;XS,ZH_AVG*O"/?M;IK[0H"2FY\X]^MC7-JWS4EI!M^(]D!,XGK:T9
M0#,'9N5(B3G B0H\+S=;DE1E<P8!'CX8N5KV#&#-7SI_3#Z/E*3\W20%(GM_
MR*^-_2^JSC*X",PJ"C UBI=KK;+X,= ?*VPGG:FOCQOWRDZ3&[EW&@!Y5NZ_
M#&?)V.#M._ ZOQ#T\(<CZCG-,B2O<9F#+!A9 E@8OSE1XG<'4,7XR'!.=Y^#
MC ;U33$W8>W.K9-[J1%G_Z4[9H.R:A_@X$'TYKZ'0%?+ABG?!;T?7\!\^5O[
M>_9/^UL]O OZ5DKQ[L^DCC,E3F'$0T$/O5$_PWSV/'L.P!9LPXJTIY4%2'"#
MV_!?S?&MRQ;[V206E5Q"2OG>_05( %:^;2JFBK-(5LE7N&"41<88B:=7%.]_
M&8&=\"B''_<Y[N:1 /09M\_]#7I-/5.,8VNN=CCZ<X<D*F\7GR'YH0__475_
M;TGLE?\&O54&*<U -_K#Y&RT-V)S8^CJI$V+N,$'9Y0/,N%RS4A!D]0KRI(Q
MON=796.B0LY.15F;R(#]:&,I/[5K:86[S[OK/^TSF__#!M^__:Y7*=YC3)ZH
MP322'L,/-("WTCNO@)%=_^M;5_Z/&O_V"5>XG=*G>->ES8NESP"@.82:#;@,
M"M[^V]/)_N\8B,3M&P;C9U6@'#9VNC1E!F]5MW_A+DC(CB'P[/M*RQ/Y:.6@
M'2%+:F5%P4RG!ZK4/>/(Y_*>M4"Y(DVIO%GSGEE*PV7[F[W*D2+#RZEY:*P!
MC6>%DMX2@I/V$(2%,0401ZG@.(9 R33_Z*ED>2&/C L_$=84:_OC] R-G</^
MV&Z1 <(3VR\_BQRZ%IRMVV'PL,<5VZ"#PRK_E,"?(4+PY)5F^Z.,_90=':+&
M9:TFNR/4EHBEXC-'SU36]J\:"-^8/'3]Q3?1*(\4O><)VWP!/ \]5F 4?-."
M6C->4%."<K'<]D;'T-<GS9@<DE6+N&#HPA8]J*E*8$/I%X$]0B#UN/^S47,=
M.5 @M_Z]/5M5VHC271"G/W6;&6H?B:$;#.Z"EA?1=(_2<-+J>=9%HP:[SEU0
MBM^>-6V^93Q#98"PM,6'E$21Y0'-W%8#)9?@P*B?A2RIS1X$9=K^/-AWW/P[
M(-8&[+GPTZ:LCW1?U&%V07+3NZ"P&GKP+NA::6,G0V)^%[09< 5\][:]]"Z(
M8(N  &!O3H$Q>=91C-HLIN <>6/G,)X72DTIVP5-C("";__W2O]II3,)R '2
M40>=!)\C#+TP\9.!$M2^&-]W,RD! WQW8;7'SK+-UDA/W-TI10I_BQ9'GJ G
MBGN_3]!C*#E.SQ+.?YLKX7-V^/XYX=!OGG.D?PX#VVR4] 3JGY>-^K=!>,=5
M<+8T:1?T;]?=]<]1> K)S\29_SL!UOVG,("V,J,V[?\ION#_7N@_+]3$>.@@
MN3Q!_PCR%#U6_.=X1QCTJ-N2C$:UO:K*@$'+E^"1V>J%U)3_+JO_RBLU0?Z"
M<F:Z=OL<1>A$3GJ]S,:=ZAEWPZ 3)(+];Y9^V[RE]/#B[[OX_ZZ/_\(+-441
M-\B]>MT&9'2D0O/3LE:IL"(3Y=NML,<#>PM"6EU.[VF]F(U>Q]$?G9>)A\,H
MUS]]&4[0)A>>%/.?_S93HOAQPT0;%&S^?WNI_)=>Z5P/4I#A1@UHTH@U:;EB
MZ&3<IYRD7U*>CFR6YM2=?QAXOJJ+L+^/(G1'IA7D)A%W1]*7&^T9LV?.[Q^]
MD=TCFE,SY#05_'1M%\1+MV_@A0]9]\AX+WJNWBZPG$X6F^\/4$L@S:E7D%[W
MJU]^9=8I,5]I9I61O1G'(:PZ&WCW[ '=1GR850JZE*$FBX[#VI)E54<G9UN:
MG\#"*VIK.7SXX$9S!GV.P>#OILF7E4S4ZSK2'FI>S>.X['A9?73%.(ZFW<AC
M]7N65%9%N*SM=?KSYWZ$?)[V6+L2N2,G&VY@UXN YL+17ZWDW]88OV!H^<#.
MJFVYI.\?S8%Y*#^TGG5S+G1/AMU2W4AH]K* #[3@9.BWQ^3!=&-CJDXZBH+>
MYVJGW.]$\RXN(F2Y<<^."I8-"'XG>JD9)5 HXADS[Q-OUP1IEY57>227UR88
MBT(.,3P'$#YC]H/CMZFAKW!\-..68&N"X,N>TG?AIE^HNZ!G\S)0LCQM81%6
MR5_6H"PD/W\9:I)!E%#+$.]:=(K2B'2( 05#/3R\G+Q\G&$^G,7I;X\1B<2A
MYI=#0];6S9^N[N/6X;_X/DS<@A+[MSNH2L3,Z+"Q!5ACQDF:<W_RF7ZLQ*/
MP&QCQ\EF:+G]H5#"*,%3S& 9D7-N/5XJV>K:%\5+$!BY,WI4X@O]"_Z(2B%T
MOX=7 -F>AYYKC0Y/G5BO]A^+)^\X&?3(^J&%6H+</(0K.B-V0162Z&LU;,9!
MM3L';2H%?:,&2T0Q9'"SUZ,6<^B)<5K+\S'Z SP'PA26(V10_)AD@3,\O/)U
M5)A6] 0=D?LYPNW)XP]\N5\(MWI6A]K-.KYJ3<A]@,^(9[--JTN/TR&R#-L>
MY#X;Q*/JC]3@Q01E^1.(NQ@]FFS'>_*""7AO=.V"1SV.M_N.4;?S,UE'G_U:
M]ZQ-^W-J4L<;!9]9MM__^%S1'5XXOA1-W@6%A@>/X0^XJ3V!U2^!Z(]:<)?+
M:$8?\MVL)C8'_#A()XS)\D<);GG#@\0Y05CHO.9FA; 5['.*66^1'^DSX;A
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
MK?V@]\(M :DD4NYSFV'FPLZJKII%8H_W1=GOLAN;[63J!+P;FU&-U2W%\W9
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
MCIJ#N=![7O*IAUOS_\!_[T09?//;8DQ>187-U0]G0[NLXV/)0BO-WY-+GJ[
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
M''S[N&^N&>')QTW[^_6B+$0XLI=WG\U#BKWVTC$K_G-^V(N7N4=3X_XUG_<
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
M^!EE>F-'8+]@\M0J]!BB*L(%[M-@3Y@G8A:*Q+)MJP4#IZMWQ/^;7D;X0%P
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
MHQDV2Y!4Z(@T^:2T\Q)-D&02:@&%<J9 6@0)Q(PB/B-&T-FDT"\)6+$(J<F
MSDCU.%W:/3!0&**UPBS8)!.?D>9=&=-26T3.T)0I+YGG8(-0FK#(R$Q1=_"Z
M%.:)#!.P!?^W[#]'@]4@O(!,VI3$)!U[F$N7T )M3OJ39^=Q<W)-1[1,>FRE
MZEW9AAKY-?+7UGKP6I&/$$M%V&*8+K'4)-B3.=TV*_>E*C,Y2N'H]S M(AJ3
M\+H"G"9A79IT 3G!C9F"&21-EU10H=!N3$UL$TD>N,D614H&A'^=<TY*K=;[
M$PJ;0)SJN;TC!X,S:9T1-)'@QM)O\K*Y@G%[Y\P#;VN8US!?6^OA"X?Y= T3
M;VT%X2JAXU"HXUC2I<?)!(1!CTA"F.131L@!M'SBI$W8G,TRD@$L!?@ZDC9,
MM2VH'PL$H],2FKG1(4;4;&&7D!@A0;N$V_@V3(2:(8PH]EX5*=I*>7-:?[2+
M>[Z_3^OYJKR47%50)2_P),!1>H4N2OBR0U^<#:J)XK6)8IJ(%[M)(F3!"42_
M)H;G$L/1X6LB!O'"B>$4+9D31KQH_C**FZSG0U'8QW=A81T@@;&:J93JNC T
M  7B&VE]>"<K5'X<+B\MA<&JN#"8"H_N2JLO$=JLA ??E"02R!>K4QGYRK4M
M BLC*8SD!<@RH_!R1_%(A665[QG1^I3 BP%MD1QR)#ZX4R[X21:I8 U#R_).
M++,%ZE'F'JLI$_T6(!N2S*#^&-6RHF:/M;4&KXH]'AV<'Y#(X\/ZH[F$^.=&
M1DP1PFKES[2P1"]<+F#>$":ZPS"QBA2!3*5;</ZP;5IF- ]WC^22C-9,5\H-
M7BO=5@O*"Y,3DUB?[X0AH<H[X L/,U];3(E0Z [FS%1L4BA7D@8QFLQ)J=2$
M41-&M=;PA1/&^$:DA8_)C":,8W[Q>T,XL%M2=TI3'J$NRLOM>;QG!NI(RL"6
MU8) %^ZWYWZ,_A'WULBED/C+14,([HHLGNRPW /RYY@'KS5!#?'5M48O'.*G
M)88>8I%?&%1)N+^S ?4G: #.#W08%H:QMB+&U\;+M'74PA\BT"B6]@Q^*4C%
MTZ"[#XQC(@J*R!MVE9LAP=>_V5#K;PSW2D\28>^S%8[EGE@P\B+'K[X2( M(
MY6=,J]<<&_;-9VQ(32-UQ?+!6H]>.(T\M6+I7^]'=]S37,9<E@"K7+ ,OXSI
M)^0L#VH.Y)0H(NFTL?<)@F^@P;),.H>X5=1\T)1\\)U323[Y[KO$%:0A+&L4
M^LD5CSM2PU\*22Y[&BN4_T[.[M5UR%HUO*HZY"BE')HZ2,(T%]RY=!]*)!!6
M$O^^'CA'\9DU>YE3>]7NJP'^0X.[]X)/@G95NBO?>6P)UB*BCA;O8_46&JBJ
M!V1,B*8#WRQ3!LM;5F2T?EJJ7T:EA;:^.ZWC> WL5U<B')'JCPV%Q2;!#'T,
M)Z#Z[W J1#=+&2W5C4YOD+6T$K/J<R)3A7W,\E0OD.[.$UW&>K'&%X3O9Z85
M#_;Y^\+<RX:[/SA21?10^YT_!OP;4 #& I0NP.'!#\_"Q5.^FSZE8]V',PQ,
MP=^T]8Z:P'\<\004K[G>_7:>;P\]+\O14/-)5.\;!XU'.4T'HSK9]PCP[__\
MRT,PLV"WTP3^M_?-5M>V[8TO[W^#F;YG%+R&L_2J'.U].T_/18;]5[^CA]]P
M1VLZJ!U]L70PY3\HK?G@O^GI0 Y/$B$-#=.$05MRPZ5!*UE@^SK#22(QAO$M
MA@6_Y(2+JECJC;\RT?F#]IJF:_.?]9)?_L^3_P-02P,$%     @ :8=94%/A
M)24E"   M3P   T   !E>%\Q-S(Y,#(N:'1M[5MM4^,X$OX\_(J^5.T.5#F0
M!+C;2T*J,A!V4K<'4Y"YVOUT)=MRK,*6/)),R/WZZY8<\D)V@:5V=F!=-35@
MN25URWJ>?EHV_=3FV:"?<A8/=M[UK; 9'_"[_[;_T?EGJ[./=_L'OG'G'=[_
M6[,)/W+)-;,\AG .D[24,==G*N?P26G+,FA"YZ#]]X-.J]."=J?;:76/CN#3
MOZ'9'/1S;AE$*=.&VY-&:9/F#XVJ5;*<GS02I7-FFS&W/+)"R09$2EHNT=KR
MC!>IDOQ$JL9@IW_@G>Z'*IZ#L?/,=9>VF;!<9/,N?/^E5+8W$3DW<,%G<*5R
M)GUC *XY ,.U2'K@^AGQ/]Z%=JNP/2A8' LY[4)+2&CMMX7L051JHW076&E5
MCSPHUJ9=[9XS/142>]/%FE,;[O3 \CO;9)F8HKD6T]3BT/UP,+I+12@L'+;W
M._V#<- _* 8[FU,N!GV_,>K[1^/S#C:M*BHGJX906:MRW]88?"]#4_1^:^K'
M9EY.[.:MUH5^78D[PN?+M8_[='0U&9^/3X>3\>4%7)[#Z<?QZ!Q&/X]./T_&
M_QEA$]X=7<&GSU?7GX<7$YA<]D,]V+E&@ZOQ9#RZ1N/3C\.+'T<P/)W U>>?
ML*E]R)KMHUVV!\.+,V@?Q_XJ@.$U#,\N/TU&9VZ4E5$!1R0G_"(<MCKDS>3C
M"*Z'5Q^&%Z/KYN7//XU^<9-<GGNK3JOEGU9XOW9O^]%E/*'9Q@'\HO0-#/?A
MBDVY#"#BVHID#C9EMOOGKX!E8<8A5!K)ZJ310EKA65:!_/[:%"Q:7%>>SD1L
M4UR UG>]%ZQ=P[$GTBONL'?T,]X8_X<UCVW\&V:WM+ 1RZH'@(O@AD?SW_64
MJZ5SS--=/F>WN-N>]?I2D\6#6-O[;M')I2VA?/O^CR%EMQPTOQ5\AFG.IL(
MD[+$Y*9Y@5D.E(1SS%3^@;5;S7^!2JK$&,%'E=&V,C"6T7YO91NNK C^I+V
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
M]N&)0ODM;U;09_W:!$-B7O_\ U!+ P04    " !IAUE0@J[\8SP*  !P,0
M#0   &5X7S$W,S(Q-"YH=&WM6UUSVS86?6Y^!=;MILF,)$M*''LE13-.XZ0[
MW6:S=O*\ Y&@B2U), !H6?OK]UP I$A+LJ,V3;.-\V!)('AQ<3_./?C(++5Y
M-I^E@L?S!]_,K+29F(OK?X^.GXQ'3P=X.COTC0^^P?._]/OLM2B$YE;$;+%B
M[]*JB(5^J7+!WBIM><;Z;'PX.CD<#\=#=CQY.IZ,GK*W/[-^?S[+A>4L2KDV
MPCX_J&S2/SD(K07/Q?.#1.F<VWXLK(BL5,4!BU1A18'>5F2B3%4AGA?J8/Y@
M=NAUGBU4O&+&KC+W>F'["<]EMIJP[]_)7!CV1BS9N<IY\7V/N98>,T++9,I<
M;R/_*R9L-"SME)4\CF5Q.1G*@@U&LIC2.&4M/.?Z4A;]A;)6Y1,V+*^GS(IK
MV^>9O"PF3,O+%$)"-ZM*UP?SHW$^B8:0M9B?7:=R(2T:!D]&L\/%?'9(W?!1
MSA_LH6XFDM];VX?%PI33'?JU9=\E>BUY-(:CO-(3\EEK1A'"1.BI,Y*/T8C]
MJ#+R* 3]O8@&WEJ?48TWJNB?Y66F5D*PEU(CJ)5F/ZB\%(7A%.!(FDQ&JT^H
MV?"C-*M=\QF&=8'F?DM 16$GX]'@&;H<S$<#KT;[+^M\A!^S:OZVTJ4R8G98
MS?&+\2)F%Y$J7<, ,"38"\5US%32&-K0C^V1P!Y9O/'PVY/Q>#@E?_!BY7Z-
MIH][S"JF19)!"*-N4:4U] 84M?Q60JB5D7"#4*\@A7'#>%EJ=>4!TM::]5B*
M1P ^Y(FVJ7N0J"Q32ZC%2A<&+!8FTDAOM-!SGJNJL,;-EJ"1 9B6J8Q2MC6R
M-G0Q*<\RMA! -NDDT%.IR7M7T)W$F0K2(E[R2-H5&5*:6AE\*Y1%)P!PC-G
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
M%W/6-C7V4F.F3'NL-"W.'DY*Y%ZX(=_8C'B$A,XH(/ $9DA1 N4#_-C\*"%
M/MG0O%HD#!G]\$!I=)P:W.1,P+,R$S O%$R\<"B\A5&6^7-HGT_:XX2EPL/"
M*.Z4>!,TF./":S_9O(=O2\T40 Z5 'G+!WK)#R BY\<"?JS_%?Q QR'Y>>%8
M>8>#<AJB3."-4YC^L*6H#^AW4XAH$C&%C",E,M[Q\2)GP[I"-I8"2Y?TQ?N#
M[^V83/B?C."R,WPM&UI?U:(I4[]6FAKG +>")HP6&<T7;M</U6@_=-J)XV\2
M]5G;JBG[OE':%WW]RL(!=/F<[@NW\;$]H=2[]X. #[[@DSG1Q$=OS8GCC=8(
M]9HW9?6W2JOC-."/C $^F%_D#%@GG($7;O[# SL@H,+-PS1%0Z9,^DX=ED$O
M_Y*3>NFV.[1GC'JIF]CW#F-.E"QL.@K\B6-B8M[4NBDKUP3?T%6_%O2MOS+Z
MUE5!_Z7;_LAV86;M)[8S843$HS<UN*I)4U96A]JXVWW&B5HG.=&7;MK78@D,
M7=^4N5/0('Z)$^:$FUIX3<NF#*T.O!V*=7N@C<YU1AN_;Z3]TNW]QB8.BV"Z
M$=LSF.7&4X>132VM;-.0C8_4<3;N>)]G5*UKF"C?(M67;MVW,@<F<1XV#IPM
MMV;*HNK &'>J1>*,=8?T7KHMW]DCL-08AL@9S"0W-N9R<Z:LJ0YF<7_Z5!"T
MKI'@2S?G>]$OFC%FM3%3IE0'J[C3S'O7P9"H^P\8&@[]I%A$P"4>&(=(9& ]
MNK%Y4\961ZZX[WQ6,,#C&&=E!EZZ^8_MGZG#$L*"A0TL.J 4)RAO.K#3R$EA
MDH$;K3:#0AM2IF"A#FUQ3_M/R8SU13)3WO5@_?)=<O."<]-$4LF!/7>"5-@(
M/V&Q3WHA5AIYBL?&>2LZ)$R!0AT<XZ[Y/R03O*?X,V="IK*\]/[BZ-".TU%,
M?J;XB,P-Q$Z439HRM3I"QGWVVYRH=3Y_V;&3V)]$_MAW'=QZMIHT9B Y39N"
M*<.O!,UN"PY4>6G6+_+7B^_M&U((8?H\"K:>J"BIF,*#.K;6G*]H_7+'&7GI
MJ*CF&IK!@+I-0Q9_K8ZT+:<Q#O;53S8T8_4VE$QA01VCT\MN'!#2*?'0#%@Z
M$C6%&W4TL'72XP"A-HF)9I#3CI8IP*ACCKJYD -.:E,8S8!B3<.F$* .1"I3
M) =SK\UJ-&/RAL9-F5T=:*S-G!Q,KY?C: 8#NE1,@4$=8&Q.J!Q0L9P0:<3\
M*\V9LG--_EV193D85"LATI"9]8B8,GY-6EY3\N4 B?J424,X6-.R*>/7I.HI
M<S('BZ])K#-D\G5-&[+YFU:I>X/1E5EWALRM;M24H34S^@83JW/Q#-FXIE53
M1M9-]!NLK$K2,V1C99NF+*R7_S?8MWUZEB'K=Z!H"ALUZ8(M\\(&[.AG;QE*
M&VA!R116U*$]O72Q 2&:Z1YY6)8\)*#&;6>7+),SA96:U$*--!,9&+X3' V
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
M5"PU2$H2D:1>3^[1LQF;3RL1X&:9?JH8Y3>(9)>T=FXSP>HN'8'\+N5!;+5
MU7_/(F@K$R'C&Q(S[=HH9BK;_2/*]:&Y]#I5^01,?B1.=2- 8_.Y4GJS],].
M%(9B\1*=+=75U1PQO_G47P$ B!4AQ0%)>ZT(+A1U@NO;*O!TA:SNY6U=;Z\?
MUMI5(KGZA0+S?&DK$B,XIN]!5A OIZYF6Z:9WNEF+,\P%VK;-D8BV5:+"JA[
M%4):=LVES2OJT*TR5' ]@^731GBHWPAE7$[_1GEM0&,J%BDRKGZWP7KEV%6*
M!&;S[3;S.=%7/#R KI>]NH?$H68,6(:GL\QC8U,E/)!;G&$\UTH))H516G"6
MRTZFRW0Y^NRSBJ\>TE0,X 52IH@OB%,5CK>60F)"4F/\KWW%\*#N9HP7ZE#I
MC0SN*!F!;%L9#9)4MDW+\D&5&V744SZ^!2</9:&6Q#UK7Q360(<T'IXY]US*
M,25_Z55'F O"] AH/W_8@&,+DM][+SKS1112#'HO#'N5/*20\UY8'AI*2/F
M-_38S$=V@K>:6N??\.T@W#I:!3"6H1/>LC)XJU@IG"%%8)C1C/;,6^CYUF&W
MAA318.:\W;4<4B2"821<_4UL(?T, E*W>P^DD[)#1;6:'LE?PPCI&+4#ZZ+!
M@W3&VJ%SM*]!.E[M -KX^4 Z9NU0]6I9@&XJ_KO)7FPCK?#V<\_H$<Z'>%4"
MW42L!/4N?PI(:ZY#H;F^.?I[V4%:@W9PNUV4("U$.SRN%@-0T1[=$/U=^#T.
M\U@@;775D*[2EAN+C9\K[/URD%V$63%L#[;1L;C0[<8!:298NVNM;<1#+=20
M9H$/!P8+>X'%6VM@NS"8OO(D;,CA\K/.[Y B,4LF.7OR#3[L:RYX&*(=02$3
M5:R'X5;9C.6T4%&L:@HV6;>- 1B.U2.$:*Q1N*F*MH)EJ@0EB*.*0):K7DEI
M^ )7_S= \VD"0'"!T^OOX%Y,WP[^7DD!4']]5269T7DT$@.L\<&LKB*QLF9>
M3^0M3B>'4@FAKFG[ C$ \6DB M"-+)1?I=#1GJ]RJ4,[5?FTN@(>1FDS0DS,
M:Z*):_KE69%5$C&KWM15"EX#7.MZ,:)HUG?M2[IA4C! LJX'"=*KWY(SJNVJ
M$("9[5O6 /N;@ "T<:!S0=92!P(4@\75&E9/?3 07W?N+F'9K7)X<,K!49[$
M-YP]$GFK.GOY+I2(N+RL]!YU[@V  :D6D+ ZS]T;  /27FAQ;R!2X)-2TDA"
MJXM,]ZONO>4CQ BA%R48?66\RN Z5:];,2I(5F=Q71IG[1?A*&U&8X60=-_B
M16THNIZL&/JZ\5I4C >JDGPOA2A5<BVM].E!TU$C*@RB]@.:"?MQZ:X4#TPM
M!-XS>37[@Q0SI1F6:T%.H_;;60],W^;B,>">G:;RTBUI*P6A6-W8M'N OI17
MOV0]H%V:  #4&"-@"[.W@2AAIBG&F5!JA7.6YRJ_M]+%-AX%C=WBDM[AM.1$
MOQ'Y>L,S[D,C-1N7(<W^>3U9=4VS@-Q=,2ZH.Y1+NISGLGL+D6$VCI&60]9:
M/C($==)=+[37XY=GS%,BS%NJ;;THD":DN%IY1WZ;]HT",8*U%TN!H]T/M=FH
MC'N>3Q-Q@=JLD=[R,6+0'00L?_$IGN>)Q_6YRU6URSKGX6ZR.R>Y8;A'M)1
M\E49/!F\C9F@O$2'L<'1K 3*=708<DNU%23/TF& ;39\CZ!.J./K8Q6 % <Z
M='LS.3A "@P=AM$D'MLB_+2/D]AHD;066([W$7:?#=T:?0CWX)UL7'WF6FL.
MP)?-_#T,K)D0(G)N&!/\/%NM&1 B4G=,!G3[P%K#AB^F.7I%>02&!-_UNVSX
MJ^>YM_5C'R[KODRP5"?OP<W<E@.CFD@@A5*/QQ<G2P.DV#$/5R83"_J5^?NP
M+=@B=_3&\-@.H$+W-Q_L@Y[.<?R'N4/L@_K.D2$V;C >.CRHL"VM3AYZ/*"
M7;T'/%1X4,?:VF?-0Z4''/,87I8>:D"H3+%SQX DYWE%>;)!# .7)6!'/-@K
M(^V.>- ;%0#IVC>4!_XQGJ]<B)I&835G5D*TK35I"!V64:&KY=C)%?IIBY=G
M8=_3$&QG8>MY+=6B!B@8 QZP&*E54.P8\7V/'?42@UU"DJU2B^M</9@_DA2+
M.Y:;7&'[*[PEIGB+_7>$I _)7,ZGTVQ.*!&%DDT?>T(&+6M%@,,EERN_$A/I
MVR6BA$O7B4<K(XFZ*9=R5M17 RF4G.$)XWCIZ8J%G#8<2:%77J#XRZ644X33
MKAF@QUALM$WN RZISS)W7N=:,Y2*0:ZZLZE-JSYU&67-5=9(>W^5*%'@K\O!
M0'EKF<BD#A":O-N) 'EECMB$K_>6CQ"!W]!34V*:9,9R$4GN71D=)2/E.FBY
M$7R51QF9TBH=??IRSQ$52/LAJ%=7U%^U)BG[=UEM4,T=HO7J<(/Z'L -30,<
M5K>E3[?DD#GS.A1@-^J#'C!=ZD;>P#@N"-=7DY7[BM@>1 ]>C- ;'/9]IQRC
M7/GVJ.N/@G=-+S GC_JF($XY$7(3N2BYNJ]K7:HGYX9W%"]'B]-)9U?I+0[6
M$!XJ,.*I4KE?X$><,^UHU<UPJSHQH#QB6N+F(L?EH:)<29HWN+X\UUHP_8Z@
MP)EY20UH*4)T+-82JAR,;XC_B5?D)@.Z_@J#HF1W9X)OTU$P=ST@)%MJ#Z3!
M$Q&2[=PLUN_:.QX*."?]("1SMQ4ZAV,!DAG;"IOMG@ERO;7<2)F%YA>4F[$E
MF![5 :3AZ9=86Z*Z;61<4./FA#)$\H(@@2(NH'>4JB!(X(<+3GNE-RQW;C>,
M'48)2)M/"+M7V[9L4HY"$N4"\V;D73W(3:Q%<\$V&3A^(J*H< +8B$$-<;NE
MCQD*#'D**_[X]V(=FI(CR(@YF1,V9<M=J]XA#??8C!I+TPY)A!V;1P&L?I#D
MJUUY8UHN6_AK, "#]F+3MG'@9E;%]_L('H\/>_5*)V4%3GY.'E"N8B 3,<.X
M2#*5$2(7"7G-B=5\:PCM#R_Q;3E$>,DPVD*&ES1IR518)I%T9MJ\I*>:4G?S
MQX[7B:QKQO%9U,1)>OKH7RD2D=!;]/1-3A].4.[&_MZ*$4']P?B?EU2'P0HW
M5/TU868Z;IU5;,"J@72&68.S'3U(%P)K<)8+#LHANZB3#26(9@EN,@V-?-[:
M=1+]Z'4A,VB09YJ6\U)GB%E- "O_G>/Z"KGJ-^#ZUL78S4=Q-6LG21MW#;#M
M*@$"8Q96;*H =6JR(IWM>K)".D9=.>(RCT.?.B<G:E/-RK1(GA#GDL"7A"TM
MV.J"4[W=L"RU_J//&31FE\%.I/&)#GD^?:G[NJF(^Z-&H%,;H]RP9]E5"K_]
M=M-5*7!-^[!376C0E&IH +KMZA%\@0LIN2'N-A'M*D$#TST1G>I"@]8[$5VK
MP]0%6,X[-A0W)-EF;,RM,QF2(<SRE&-#=UE(@SPVYIY!#B3)_C7!B%-"IR*1
MXG8B5%[61-X_Y("0O+J$J/Q0#TB05"L0,I*7*G]42S5/R7:')(23='<.PD[R
MW>:V^K+AU?,H6Z_L9BM):%5N7LPWM0J>M:-DQZC<5^3"JLA2K-SP8'K-.EQG
M[CQ5*W):>2(;E?-C-1R>*=\(99P4+XU!]%QGY+NDMSC#<YV,_)\H+TT198ZU
MWU);=)#ZASZ=<';Z*/>3*?Z]G#]@KK)!ZTV@FE+792&46&#.,.+9"ABX6Q2>
MJ>W0#6QW&[!D8M_=DPU<A!#$IA&P=ZQ=2,*P[ZK<?$9GQ$,&P@08D3T#MH+@
M O7')GMJH5S&=6)51ILTJTN%I_PQ03KX50N#^>L38;Y2]-C]AA.==T-Y2$WQ
MUEO-+4^^;6>![*T2)<&EIDHY'FI>KY/9@Z6G%@ X2W<&6R1;%0" ,!M,NXH"
M('P9+Z;.\W/$^<N$\2?$L[Y%XM "!)C*A=L:T6IA ,3+?S3?ZCBO\Y4'>DYI
M$\;;Q)!8#YUWP_O$E/9GC50*D]'9U-\52,8U;F/*H:'2@PKS6['NS')J?F\8
ME.?L23EV?67\@I4/Q:3,FV<VQV6514< F*9NO-5R:.BUY8*Y9E183E,?VD1>
MH6=CAC5_KC\'[(30J44H;%#>S4\D5QF!+)^N\&X'"N0;CA>(9)OY6:Q@&NK"
M@>;F=^K9"BS-I=6-@KG)M9"44MZX1CY'(<4"^(^UY:T,4I*;$2? 0 '=(R_.
M'G.E_79GRX./D'E@T!798@OQNJDWMBZ-GBW OT$&.,I5TI8309XV]69%WR4)
MDNW-2HW>#M96 H4HM@R#ZW&I@BBG#!WS44-H0LHLPX!;WRHAKG-[T/V&-8^%
M'62WMA]5@Y$GN,W[I^2A$N^2A<H:E:#7:+;E+Z^A/;X6[F&]A+-GCT%G8.OU
M1GY6_Z<, ;U?N$W<5T2X]I:ZGJ@_^S1R+K5!P"O5C+F3L[$4%8WVV(Q5@<;7
M.D'HS$4\4@+B0-+?2* MYK+%(5+_H/[S@ 267_X?4$L#!!0    ( &F'65"2
M3K'!$W\  .H]"P 5    9VYR8RTR,#$Y,3(S,5]D968N>&UL[+U;<^0VLB[Z
M?B+.?_#Q?N;8W;ZO6+-WE&X>G:WNTDAJ>\]Y<4 DJHIC%E$&24DUO_X 9-U4
M(L$$"0+)$B+6&JN+ )@))A*97R82__V_7I;)5T^49S%+__[UA[]]^_57- U9
M%*?SOW_]Y3Z8W)]?7W_]59:3-"()2^G?OT[9U__K?_[?_]=__S]!\"M-*2<Y
MC;YZ7'_UL"C2B/(+MJ1?_9^SNYNO@J^^_>6_OOWY]M-77Q[.O_KX[<=O@V\_
M!A]_"(+_^=])G/[Y7_)_'DE&OQ)$I%GYS[]_O<CSU7]]\\WS\_/?7AYY\C?&
MY]]\_/;;[[[9MOYZTUP^C?)=A\/&/WQ3/=PU?3/T\W=EVP^__/++-^737=,L
MKFLH!OWPS?_Y=',?+NB2!'$J9R24M&3Q?V7ECS<L)'DYC:TL?-780OXKV#8+
MY$_!AX_!=Q_^]I)%7XM9_^JK:NH(#SE+Z!V=?;7Y\\O=]=NYB-/\FRA>?K-I
M\PU)$D%R.<*"TUDCJ=L)E!3\(-_]/PYZYNN5$(,L7JX2^O4W_8F*V)+$:;"D
MRT?*.Y)7.X9Q0N,E3>5*":K7=:6U81C3Y"[$>#PL'FFP>V-'BA4C#3C'=$:*
M).\_R:_':21X2^TQJ?)=\U+1A7\+V5*\[L,O'SY^]^&;DEZA!W(J7I4'*<O%
MBOT09,5C1O\JY$_T2?QO]IJ#><K#8#M&2:K&$(W$"R;C-);JYT;\<]-:$FB>
MC8H&^I)3H>XW2FE+1L+"-Y\KVW[NC(9_F[.G;R(:EV^7?Y0S$7S[8:/B_H?X
MZ8_+-(_S]<6KM9&01YK\_>NFQQ5-B=3 C&\FQA5-]0(W(&TW=$Z2BH+)2YS5
MD-?00I>R+6$SDCV6*Z_(@CDAJXHZFN39]I=C,C<__W$19V'"LH+3!R% 9^(E
M?TX>LUS(9'Y$MD8/^VS<;U>+6&ST6OQY/.GM#1T2_4 >$]I&\*M&#HC=:9_+
M4OGL/GX3W6WM52SLE>>$AU\Q+JS8OW\M+.%J3_DO*7\T^OO7.2]V,[+9KCH:
M-S/.EB A81T6@GBS3?X:C)F*197R86WJW"XC"ANGX7.]7B(,H&J!''TP_FE>
M[TB=ODW]MM:7H\V/+,V%4%\FY;P* X?.Y1_:'!\X*5V6F$KY65Y5[5H#H@^8
MMH+<L_G?W]08EL;-Y6^#)Y(4I=\<D#0*_BI($L_6<3H/2!BRHH/YK#&D-7-:
MFR9O7GOS^IN,YP<6D_C7,7GBIS\D(A45"9W.?MN*V"2-_KD3L,E&OFKTQ1$K
MAD;S7H7W*GI[%=XD]R:Y-\F]27Z*)KG1?=:RP2[V &&[\ISR9!V(%Y$TC$D2
MQ.F,\65EWQ8I*:(X%[:KGN'>96A;!GQWVKPA[PWY=VO1_G.[9JZV2^9ZOV+:
M(%V]SMY<]^:Z-]>]N>[-=6^N#X.@=]F/;%OG0L2RD,>KTB)EL^"QR,3GRK)
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
M-E>PV2= %^MLD#BF'Q=!%8'OMN"0YWL OYE>^&5TZ7\^3\KG22'+D\*31 C
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
M(9 !#X$T+MA3.P1BSPR"L01/X+%K__1F$)R4:G?_-/;AFH/\=M6B,8;T0XY
M1NU56P=(9-^#%$">[95=!_#<[^P%D..?QL1Q;:(^D-&?1\?HVP,40%9_&1NK
M;\^V0,T"+*?(>YPZ@K**T 2"YIA"6<1B!)E(-87RC,U :CN; N4+FYVDD>0!
M91&+A=2>O 7E"(O]HY5&O&?.RNGZ[P(2_E6(!5*6_^UYEAXVF*V3\SK4^'/R
M_IR\L'G."K%3T"R;[ 7GMA!JEF3TEL<AW5\&=N2=9M=IF!21V&:V'NP1W4,-
M;Y#I<[9\%*YHM?XJLR"FV827N^>5T'?2@!!_TE36G=A=C-5T>&*0L9VQ*SX(
MY33+)V'(:<VQBR&&=L;L-%]0OIO[.Z%3=^C\)/JW,!U+G-[<#.B]S\2)=EKP
MF#4?(J][;N"UM_&?I/FE;Y\:>.4]398T;'YIW7/[R:HUBK'\DU-UWC:XWPFQ
MY#XKO8[$YC,-+:W=D:^GHR9+"<>VGN<T.[B[XT(-[/4Q/\P0N+G()7M@FV6Q
MG7&:?:;Y='9.LL7F2=,WZC*$/W7@3QV<Q*F#-G7,.N^N=KDUF(,$VJ'0)1W!
MOPYK,3!1)9P,(:<CR5G5_Z+-?@JZ1 U]YII=$[M?SN=\^9ROT\OYZFX$HU,M
M@&#V8,CK2!/'>C&#+1@ZA,\]QK2R8<#V,2:;#0+$CS$'S1X>;SEN_7T@]B5*
MEW(_%K^DTE 0[1)9&CW>?,>>T>P^K[ 5X^Y/HX]\^\AWO8'T^94X;96C3,F9
MSFZ+O+HQ&ACFUAIK&':JEYT+3T"+\J9N!H@\)V+$)W(IUOI\?<^2HDQ4:8[5
M0=J;"([6?JO)7'CJ59)97CF/TYF<F]KP::<13 18.5D21;2S[GEOD#SC^0%
M+OYUO+;%3W],G\57RQ;QJF9E-SZW3%JM5E2T0$H>S@"I#V?[<+8M\O?']Z:S
MWUA^H(.SEM!HO\'L,_\I3AD7UM"6I)TJV%-]MGZ]'55-&OCO/9Z+&H%;!Z!^
MV[T4WRA?-V7I]1S%A\5]6'S48?%FVXL!;!],G/@ OP_P-[HWJ.*+IQKB-R"Q
M+:X@&AE5:<:12:/N#H!!T@;1'G!X"0VS$#$TSA:>XFX^K41; _JT$CNQ^#X
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
M5PEC7#TQJG8&R/A,\POZF-^(W8*3.;V3VX(LLI,M6!+5T0/J,#1AS=.ET<T
MD?<T+,02>O6V.JI4[0R0(3'A&T;J#PHJ6AAX]9=4[&[+.,]E+1^QB<F]J\HG
MEJ_;KIXZDO1ZVDE+N0]I2H39\R7-A&$4SV(:U6XZH+8C(MEXE@V,]*T5M*6K
M(75*V<X^@'$F\ZZ;=+:ZD8,TGU<[O (3:V[HFNA:<88T'1WA[I/=Y-YYG6;"
M=97K30AQG-VO."71-/U-K#SI'4NI;L*?=;N[9O"*TLE2YMZ#^'G3V@7Y,\J%
MY&S.+,F(HN*ZJY;6]LG_50AY=L.RC&;3]/)%'GDHXFPA)W<ZDY/=P BXGX-*
M-W%*I[-J-3=07]?$+:$[KZ9*W#ECG+-GZ0^2E7C26-BFRQ X&-W!8'U8;1_$
M ;,LG>?"9I:+0!XE5NSPJJ;N"5=NENK&HR3>_5Y_RUE(:91=<;:4XIZUJ+'6
M]BZBQ2NR+N'2Z0S"0FM[QRRPZN"Q8B=L:^X@GKM@/)=D[+1B8Q2ZN:6/G9]>
M]:U#BU^Q+34U<TNP4J,W-QP5T;Y,F),B6PJDA>D &QAY4]J83,^@P\A?H[)B
M<.V B:]V>)5IH=VC36=J=X[0'(T"KB$&"/V@2DLRHT,PG*0R*)=JZPB=3"IT
MWP%3JN (2I'LIO8QB&+O;P;/SD!W#@G 6'MVA5VN#)WN!41,T:@.F'7!NN9W
MH-(G_<VM7CK%T!DY@]M;6]09C92"W#+6*<4.E83V=U)'LNO!/B0H#Q#(FZ%*
M@OZX@C^N<'K'%6XZAY;1F9V 0_U=<A]'>@Z^6TJ0795JYJ-J9$8#V<-6F164
M3P3D#5ME5E"J%Y"WGY#P!LP]!W+U,Q*N]$+A0.9^0<:<9L8;=->WYRC!V 3F
ME$#9PV;5 /--H.QAL6':$QNA'&&S5NK,4&C:'Y1G+$8+."UGSYB=0[_?!5G.
MPC\#3E<%#Q<DH[)2SYR39=^SO_HC6SL"W)4T?Q+8GP265MZ""$]C$OY5Q$)Y
M?1$2P>^E/-WMQ"F[K<2I:GE$7*\Q["<]70H2\_4Y6ZY8*I:0,N])V7:$I"-(
M'-[8-%>,[T5#7I:S7,JR+D)B&OB!=W286GDTZ:H;J4%]?&KKZ:6V'JG%C5:<
M%+DPI63%QPH[:#HEI]D;"WM509CK5*S>L/$$H$Y7^XP]<$JR@J]+*K<;W:0"
M1B2:)>@LM[8&YG2[.V90?6]P<TN?!VPEEQ2V>S M2\8NGP83 32V4G0Y >KO
MPC36'*JXJUDYQ9 6X$/G/G1^>J'S3N;DR*+FW<W+D87-#0 Q(XN==P4'1AI#
M[^9#V(;@OP\HX3+FD05BRPPR25%?\%UG3&NPNSY1'G!_7X"[&<=\(FB(XJ20
M5_^6&1E"AFEV^1(FA9 E&?Z6]G*1EV5YI[/+C5!NM8&R2I'1L4<W-6?K^@$4
MN*V%-V*9QL]DJ3X6#NUV,@RYCY]<BEV-K2DM38!I>;NW$JIK;>]##/[FB9.
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
MI:B(#P[S$A^]\1G@R ,B!B'U(=?0Z,!8[]YX]P:9>]-AG[?MX'P,0F%!QWE
MYIQ68$>P)'G!X])D%E9VPM)Y3ODR>&2<LV?!AOBYR,5 J01ON[HPQE]LS4D9
MB'+OAKPO-Z0A!_YF(SL7]#'_M).J.[K:%%J9SFYYG(;QBB23F6CX+TKX%2MJ
M,^7[CN4@<550_ "C^#K]+);,PS--GN@GL84MF@QO(V,BGXH&*3 RU@A8?Q!O
M;W)C^@TV!N:?F3'6]T.Y9?PS2\."\P,S5,':V\8>!O PP.G# -[C]1XO,H_7
MH*V%+NMG@!FHW7/19?\,Q?A;.PM=3M! K+\UK]%E"@$*/YAQ+]$E#NE_\R8#
MU#*8]UU PK^*.(NK:/F*TT1B_K)TPTJ6FPY(5<6[VJ*[H'8]WF +GNM-HL?A
M/ XGE-M9D8GEGV7G;/DHQ$?*R[X [74DY"V>Q=)NFV09S;.)%#I.HTD:W8B?
MXZ34A>)9L10_EDVNTS I)/[[*V/1<[RW'0\A.XNO139)YY4&/7P0AD+%1[^3
M>9E)O"TG?"94P2S.:PO$H2#(P,3>TV1)P^8:*'7/791_J&9[LM>XFQE5GS8&
M]SLAEMP?GZXCL3D_IZ6U._(-+NVJY2T7%FL<;<K)BO;3?$%Y]:QE<IS0<D)3
M+T:A\9/L:7VF:UY]$A/[>KN2Q=JR6[)6X+M.:#BUJ2Z7J9,)?O7F<4_KMA+X
M WFQIGT;WWDR4WGPT.Y\UKQXW)-ZG>8DG<>[QN72>UB0M,&A<TK#V*?Z2;1G
M?&UE2H_>->ZIVX.1#O:G]I>/>W)+5O9,6MNFE.\=]Y0VG@&T,*VM[Q[-U&[5
M?_VJI(8G$_HV^]/7LA6[WR5]HI!/%#+("!2N8YW1U]&E16DAF&CJ-.E_'=8:
M"T"5_S6$I&*H]N03^7PBW^DE\MG'W4>:[V<!B1AI0B""(-E(\PD=N+@CRS]$
M *V.-&^Q%S,_(6/&8B0(.$,_G_ , 4!(X"S]@F26W*3<04U">TZGLPT=FBD
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
M9<*VO RQ<FN3?19W;R! <WS[3GXG KT#_[X<^'=7><,7N  >F?$%+A 45P#
M/PC2(&K)V4:.+HHF!QO:#1]#DYG01_^BA%_%3UVYJQT#'ZN?A47P\$R3)_I)
M.(\+2)Z9SC#X&.[Y6?%_T9)"5AQOS5V[XV3P0;RPSR=\U1\IB\^L#X/[WDC8
M^Y)N@XTTNGP):9955S3I,-DVAHO*]%E&:4-60?L>J=L=+X.0/;/76'A9!^ZA
M?8?#.P&&/OMXOGC+'MMU&-P,J_;<SN,@9[EQ#^XX"C)V-??D7F.Y#M:/KG*>
M#[W[T+M!1L!@I2]G=E+ES$ZA(M*[JWKFLVA\%LWI9='T0Y%'FD5CQNT?:3Y-
M)ZARI&DTO5S"D1XYZHBU [G%4EG*$,H!Y!IS;2DXB@5D%ENAJ7[0'9#I412?
M:@5FH48(MBI4_>!H*-=CL[T4,1<HRV.UO RP/C:[JQN78[6XNG$["EL+AKI#
M61Z5P666]5%87=U8PV9C:=9@L'.PX$.PXBPJPCQX)IR3-%\'[#&)YR4PF 6<
MABP-!9W5Z7@V>]M\FWR_[GKV8$ 2K!U/&)P'?X+!GV#@X1^'%YA/9Q=T1CFG
MT1U]HFE!I^GE1DI^WTC5.4MS(<!O:A :&<M^E'5+TFVU>+:4E6$>DASQJ-<)
M&S.;?\8TN\ZR0JS[+LPU#>(D/IY&A.M].5@G;,Q,HJC<6+(K82.<%9DP"82)
M%OY5Q%E<<QVUV4&Q349+#52]SNB8XY0*]2Y-NNLTY-*JNZ#5?[OQVSX>MBD
MJJEN@_C<(Y][A#SWR"<L^(2%TTM8T#&\1IJ>8-+<&FF20A?C:Z0Y"GWLCY&F
M*!@R-4>:LJ#C](\T/Z&/ZS^R+ 6#<)5M?/UC(%:5V$P",A=+KM2H0;80G)2U
M:!\9Y^Q9+,+.A7NZCF\-&>]'H(>]/>PMU_[9C5CH+'D2DG)>BM,5"<MH27,]
M'F@?4W6%I.;*IK/J52UE@A1M'> '<C7*6G9GN\78!"(TMW1(]@5]S!_$ZQ65
MBI1M$9"N+._3TGJDY+LO3>3!/@_V&60$IFN8YKH>'9RIH7(M?SV %]+R15@G
MTP(5?FM*2C&<%C3X16%6F5WV?&S!QQ9.,+;0YD-@0&B2S6GP@0 :P/!.\1DP
M?1Z>>5_PC!D?1N[%DS0Z)ZLX)TF9#3W=)\LV^#2P3FZ8N4XSH53EVCDGG*_%
M>E'6$X)T<<W(EY14>#N-ML7P0=PH^B$IR-C QAB*#Y\7G%.]TI%'71P4XA+&
MP-:F;B"\KHD#0L6FM_44M+637F>WS*FE2-'202DSZ9:UPM(-K3RBZ!%%Y(BB
M=_&]BW]Z+C[<OAUI\J"FR3O2_,!FLVRD68#FSA9C2_936D C3>'3,:5'FL+7
M:FN/+$]/WQ,%,HBM<E 7=\\VKOU#$*>B%0UR\D*SH$CE(?1Y*K<I^5/P*$::
MQ7EG8+OK^-:0[7X$>FC;0]L> >B#  Q#[)>#9?Q 7LXVB[B!ZI;6:,C?'K[(
M[F@FEI8PXN3)HWN:YY5[FOT>YPO17OI11;Y@U0VH>DSW>P>:J=J>5WG-QL:Z
MN*4\9K+U+:M.:FG.4<?!D4_.K:";#S,U+4.CF9@[*@_)2-)>D7]#5L)DFTU6
MJR0.I6*3:J[(Q4\W\5+8=!WFR<2;/+#J@54/K'I@]8@ED#4S4DS5_*XS4MAU
M",MDI(#MX#OL2.'> 0U\QRC5VT*)6?D1&5\')(T".IM1\>F?RO8!%V.9PJ\,
MO-D5LF6,=(]YO2_,J^$XZ^567JY+*1,:XT[(S-TK*2L5U:OG%['H)C>CF"1B
M/PK?IA@-,[@EAL6/52BT)*XG@\K!')2BK"595E"(TT+L%IO*Q<VNL/X 6)A\
M_5TF^145.SY)[K<*]%5C+>X[C8QS6LX7))V+!I<I"?/2Y.@Y&^H!<4Y"=:-@
M].\BRU4E+?L,A9/Q^P7A]$S8E=$Y6ZYHFI6_5J7G]]9GO48<_#U(ITRJ]4D:
MR1L6DUV[1L#>Q) X)V*WT4F?A KG8M%C"IH'\X$^G^KK$6F/2'M$VG81.M.F
M[TC1:W,[^,A0ZR%]^I&BUB9,F9$!TR:!CY&F*P_LX8PTP]D4&##21.C^8,!(
M$Z2[ H*VPT\_;K. @U5"TBP0/58L+8M@L%F04O%[&5J-PUW#D&5YUYB3H==9
M"S09I=='E]Y7=,E460HATC3:[HU"#%\7@OY5S%]VP[*L$5WK, (&-B]?5E3N
MAW<T+W@Z34O"!9&-R'.7(3 P>BV<<TZS_%QH#C!K=9TP,/.9;I)QXG#SJQ9;
MZNX8&+S;99X(6N72D2OGHJ /["#11)Z)*KC< \I_?@#SWVMTCP)[%-BCP!X%
M]BBP]:/:\.UYI !O=^-J9(!N;ZMYI*CM(+;(R&#<?G:I:^SFF<;SA5B0Y$D,
M,*<!R;)BN2I!IJ#(Y*%O)H$)RI>"N=?@Q6JSA0V!\0Q,EC,LR I?'C/RF)$1
MS&@OG%]D^(4D89$0>42B7K-M"SDI\AR'><D8)VMK"6VKHFPM(DVT:IC7>E#
M@P(>%/"@@ <%G#L1YO;'DP$1AMSS$/ICP@D0"T7N%)5N&,K!4KX'D\<$(-2[
M0._+!6HXHRA8IED>AY=_%<IK3U7M#)!1 KMI*:Z"T19:6AOWMG,SGA_8N.)?
MQY]-_/3')_(2+XME+9V-SRV1)A2.DK2ZYW9(NY-9>35B7OO,(DF-<U7S%!E9
M[N\\?6N!G*UW@8MSL7W-&8]IIKA*M\,(&-B\(C'_C20%G<XZ)-(H>V-@;T_5
M ^%SFD]V1L4FFUC8&V!N=0;#P/SO&[MJ4ME5)>E[FN%?&3B.B\N 7FA49=)>
M%6F4U>H:6&/[Q-<H!^5]T:WM1\R"^PW@C@I+K'14E$+4U,RCJ1Y-18ZFJAFI
MMUY9BP6)B8,^AAC35K.C0\(5[HGEK]B,&C;)&FMU^E#!^-"UA.&N<(,WVW?V
M@-#('UP',#V[$I5X#JTH,8AU#R73#'JA84%+3H'H)[K0$9PY()R*+N%42\VH
M/0^[7\\'YGU@_CT$YO4!/W1:M"OK &07G3[MRJL6ONDZ>^!M4>.$/M$D^*X*
MFW<N^]SW/<ZR![H1ZK,'?/: ,!W+(B/7Z1.MBHPTA^R5#3$$>R9A7I#D[:&K
M>Y9$%P6/TWF5-@6.^N@.B&$2?-#VM(*V-U*3?_>Z+M#V-H<KQN])8Q#!T*CX
MIV-[_XD@_+;@X4+\:6A*%",["/5NA?9LO?OS'[$P&01AZY)ZQ3+7Z^R0N>MT
M56P_ACJ8W=[#(1N?A-@4O#H(^G;"E2'B3F.\ U;=1\A]O@*F? 4?_L<0<SZ9
M\'_'G9(94=P8)\)G$?A8[U&8"0 !H I:O(<XKT&1[N(DH)/F;EJX;A;:' N4
MHFYI^^HE^3X&ZV.P/@;K(!")/^C:$X\[F8!L#Z@6. ?XJZQU"[_8CD[_%&3R
M[H9-*#8KEDO"U]5-NRS\,V#E$?Z R)+W0C-WC4WW>XNUR+0),GU<^GW%I0T!
M:[47J$PXEWFN4D+/UOLFMV0M?YH\$QY-JQH;ER_"EHPS:49\+A1AA\'>,^HI
M.\H?VCRAMSP.&T%.NV\?W_2*S7U&8['YT>PZ568N#/BF\4W;KZ)AON/C5\ZR
MQKC <&\:W[1-BUQLYFDDK*KK-!?&51:'I=,QT.2UOF_44SCH%M+XGE%/F8,M
M1//M"*<W@VV2>[T^Q"P/0L0()[MF&W4QW1W)&.&$O]Z 7<RU/@6.IOFQ74L^
MMAO:KW?JIKM[AG_AJ"?Q2$KNJ'3MQ18DKT#DI,2\9/U&"[.K2\GXIKUYAV]B
M]N- T]Z#$I]:Y3*U:BAB6?CG=985]!6478I05CX\,IX:??_. _E\,A]_]O%G
M'W\^9FE8=&*DD6HG4,-(H]G.3:611L M0:K V<%V\]C@:#UP7GX<V[P,A6$
MY^LG;//5TV &LOTS-K8=HKC *?ME;%/6-ZP*M1#M)4];DJ5>$#5TUD[-L&[)
M'(%.RZE9UIWR0*"3=6JF=6_P%SIQ*&UK"S$)--FG\HIM(??B V]:$,E--EPB
MJNX+W>>D=J/8IZ?Z]%2+B3)5,<_K5(AJ49I6Y1G,AP5)7]M2L@#O,$F"W2DX
MP6F6)NO1SEGZSQ="Y^S.Z;CZ EK$G=+'>0UA6)_^^M>?[@3C6P =Z3NE3_29
ME>?R:31,[FG7]Y_D%.-; /JDG=*'^:UDW9G^KW_]Z4XP/O'O2)_/K/)%JWR2
MD4\R\DE&8P']^YFA[RWY:#"S<<R92=8A@/>6CC2LM_[>TI=Z>1^GFM/DQE$8
M:\:3*^3_5%.E'.#TMN/*OP1_%83GE"?K0+R(I&%,DB!.9XPOJUMFBI04D?SV
M!W^U]>D8<[9"C+5XM$5N?*S:QZKUX9Y+PF4B4"94^E;/Q6$#ZJ-LZY[TBS@I
M\L:S<RVM[9-?9J7?<C:+\P:2:UK8)_,SS:O;?F^:B^O4MK%/ZG0EM')>GHAH
M(5C1TC[9=_2)I@6]$M;+-A_O]SA?G!=9+FCCER]A4LAS'K(@HOB_Z(&\-+#5
M8R2/CGMTW*/C'AWWZ+AE![2WSAXISMUHW(P4;FXU*4:*#"MLNY&BLP W9J10
M*LC'L8PN??PV>"))40$7)"W!C22>K06= 0E#5J1Y%F3A@D9%0F6F?GOK;LC2
M\(380I5L<>(1I?>%*#5<&GU/P_N-,'WX^.TOOVV%2=X9_TS2D&:3-+JC&>5/
M\HAG=5O!]M:"LR(3&BO+)N%?1<S?H#/#O<"^;[@C]XKQ<T%)G,LM4WFO*:2+
M?4;DI5^I>-EZ]R4VDZ_D!=C+ PVG5^#L[8J=SB[HC')>^BO531Y*X>DP @8V
M#Q73&4GD3V &%7VQL78NC,FY^!#LG&6Y^/WR149*N[':,A8VUI47YNIT/3G&
MW%\*K*:R2E(X-A<Z,:P>"AOC#X(>Q>WP>IT]:FWE_EW-C\+ZZ*#1H?9])-?R
MQVY'<K2^%^OB*J"*8=@1< QW\P[X[;5<*W3Q@*Y<=_8)['YW'Y;T8<G3"TMV
M\%?1*1X3G(+<U9&&+/L[/2.+:0Z--ML+K0G%E[$DCHA,%WZL5F.0+>C!9='M
M83' (!9"6F J?#C*AZ/$^KU\$4LTVUX)7M9[G#Y1?BM6(Y5/&)<!_6.:NG0U
M0.R57"3T)GZBT3:CYR;.\NPS/4[ZA38W2]2M6'5I+C7> PT7*4O8?-U.6TLO
M R3NLFENI-:]B<ECG A1^LS2L!#V?RJWXO+ S0U+Y[)TY;9)3&N_O(GQC+-U
M)T\%36=?,EKZ,EL2RDRO?$]:.S^: QE@Y(&3B'XF2]HDR;4-',1D-PD.MV0M
M3?/SVAF%-79'_)U03O%360N8YC 65%V<,%(LBT3N\*5@RJ-VG"ZDD_E$]]EE
M@M3IK#F[O>,H#MB-HM(R(LDMB84%?4Y6<4Z2)K;4K1V07P(K3=2^>NB*N)9%
M4-?&,:F3QZS,[860?-S6/NGG)%N(743^1YYS?2))N=_GYX1SF3BF*ORDU=<!
M:VRY9&EY]X.2BX9F]@G>0IZ5AML!GV_W77@'!$P<V%<:G-3W<G#T4/C#;$V%
M"U]N1P=DJ343N)^#XXB,1<]QTK1+'3]VF)76+"]U3>P3VNR**%HX)5.HZU+3
M+5@249Y5I0W::5=V<\J0>A5B6G9O:6FQ%-H[.&!BXS1?T,>\W/I+"[9T3:>/
M23PO\=7&Q:#5&2MS+1+790S[K'Z*4\;+JB8YE1<F-'#3U,S!B>\2Y@A#7FAL
MPK!.CI@1<TK2>2P<]S8SKZVY?09N.5T)%W83(CM$H=H\-HV>+MAB*\KS]6U"
M2IQ0[G,K&;IH_C:0+BX*#424+DM0B*4R=,Y9DE072);KN-K MW[:9"F1I 8&
M^PSE@O&<Q"F-MN?C#I DX6+$86,%#GA'%P6@&<_EIG+&.&?/DKP&+A0M_6F,
MTSN- 3;E,1GO;VEIL8/;.V!@XCK='-^_%4M0)AGD.8\?BUQ*R .KUYU@AOL,
M;G]R'F0"1<'7K=!;<T.?C.YS%7VNHL]5/&()$#Q!=PQ 3?,!<QW"*>@^(YA9
M>/@:7;(IF,=FD!I=&BF8)VW_'5WB*%Q$>S-EKQZ.QO>#XA7H*N.T\JB76 ?D
MSU[9;VW^0,EY0#;M5>L&BRH,]@3R]PL>_MJRYJ";.D(3ICYV#&4(H9D"S;"
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
M9KC9+T:7_PKF"8XJ6MXXE)72S&Z49BT"7Z1KX.M$H=FB2+9^Z(<R[_.B,Q7
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
M_#G$GT/\>>1PP#"["D]#UTY4GF<A:U>2S],H==_,BZ>AZ^&9%4^#V6A2U=-
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
M*O"B@L)NS^SI.FU,;19S"L'O^6LMJ!,YKBWR&SA\/G5>-?#150,??>+PT2W
M1V_J=,@I.9B.A<G\7+@%"?%TC'Q#<9:NF1O-.L-WBV91EM6%(+44W:!]ET?0
M97 $.:#.%7*+C7V&';OS+;9)ZI_)&*N><U<?.+\>+C^FLW=*1^Q P5&=>_B"
M.0IYPI^Z)T5)<9E2X3.(J"*/6)TG?Z^*$K[]B,N[Q5/TTN/>.J:FZ=LZ0N5K
M5\<1?)VMH?"<'"BX.\K0&N%V;XFY&%LH098)KM6%>!XY3T[!+H#&')D9#ZSM
M!=@L^ 6*)%RZ!I)00GD'VQ O..[H&F#MQX"G[R"H#K:JCZ U@D&K;D@\HJ-D
MCFC[K]XACW%"%3[D'IJBOKJ2&SM%0W2%82J%11912GFT'D.\8/>N7B3-&?6@
MY4A&44ZS4@E['F*\?#^*Q\9W;T\S=.9.>JR7.E$4B<!54)*TB-F'BG*T\0JV
M!@K63<FW-0Q!"& A:K!8Z<"D2KB E=EV"JS&A>@42G.Y]Z=H68*(HZU:,@YD
M++ ]HCC.HJ+@99K%*@D&<1:1.'-I;13(AK E$O"F9BD>#B$C@(S.[RYN3]D.
MJ B*+2U7'GV?Y:3@QJ$B@GR=^6MS$EOX1@6FSVFLN5RP0\IY62IY2.%*5['O
M/N(2/0),N#"P+A0@U@:/-<Q)ZJ0E(="JAJ4[LJ&N-7K ZRB%@[L?HK*B:?G:
MEVHF\XKQ94;'3?N_Q^@8@]D51C;Z9'A[T18":C $OJIH0(0Z;RD:XZ'/F:OY
MQG2+2+-MYW/3 (:@DU'SW=1W@W3'56NZD1XLKQH2KW!297QQB2DEX)U2YHT*
M)]2:KJA0<:\U,FC"Z0_[J@8( 9@K ,C67UN IZ-(2H.NIU+J(^F[W&F:/[-G
M"$TU5TD:[7HIA-I!/VQ55%YA88MIDEJB,Y;:I5-'!\BW)O2D'MM4"CD27O1C
M&$IP5>E)M3\EK9$<;&T%4AG!8#6)XXA2<;1N#;G^,!%NW]#1+)L$_58SE@ V
MD5+'4 FQ!HO..5AP]+;O3%$'K8J%>;UDY;$^D5)V8(CA/O5M!@+??7E:1?F=
M.*+W(U0_+6[R>TQ3DOR,T^6JQ,GY,Z;1$O,?+QDGMX?[>N*#D\/GNRR>[7ZX
M-BR<(D[0FS1'"<FRB!:(S4V(E^ (>,YU"KSOBD9.!MP4S_]<$\I@YZ)J5?SZ
MQ$ 7$5\RG^<)_RL3[#I*^;^'93?[H2QI.J_X&?XG<A\-5%@+@L'R62$G6%U;
MC!IT750M?D7E#NA4S[ZX%0J)$S$>1CK4WN'':CW']&[1,FU_QEDRNH$X\I[Q
M+F)/^_ZW$GN F.TG6NN=X::BP &KC';B,$ Y0[SX8N ]QC$IZ]QHE&+NE^+X
M_X0+YF=,U_'7Q#<YQU^Q'Z[ME(#SK^'WZXJ0%[_?2"Z"10=;Q4".?W02'E2A
MZ#<^*(-L.@'"5JV<XY]/,D*H)!GF(4+UX79_X5K]3TPT#]%*M>3H*K8.BK[O
M9=M]N" 3/:XJ-T(*E[>-LOU+<7#9VGN!T[)B\C ][U8'W.1<6Y5.> A/ 99_
M%==62WZ\^+7Z0N%^NBRJS283O^SOT+<S*"D61VM*TKQF-K/:(>IH$C8#%V"^
M?MP"/LA$:6<&/PC J"3-B].>VBV)B((78'/<OQ2'X2/)G_FB?'KN@CJTR3D+
M\EWP%:J?0E]U=@.F@%M]C#8\SO581K14VW9@H&;/^E'++X^'5[EBK4)##IZ<
M<ZQA+;VXQKJBX=4QCJ-B-5MDY+,OIUB3H'N'6!%86&?X@H%%UPSLE^((ZXJ%
MGA-L--9?B@.\C:$TNU*APF+'"";GSAXA/7VO]:A+TW*L3#AN4NEY/[+('2;/
MUC.DWOF,&?8-K7O_YW/MD,TBX9$QRU_7'!!/S$I,UWQ?$*IG\1,"E#5E7 ;
M*0)''I)%I %<IL;U1K7OW2J/P9]!<%<1WT2_K-$CN/Y\\H4'W$J2@E/E3#S<
M6X&UJ"\"YUO)HD;;NCO:4,,56W>DO9(H FCFARTRR%$1RMA"-G&M4QU=!8W2
M&K(O94VRC9F(Y-QPD?=]^I-;CQS@//W5R$&'IK46,>:VK6BXU'+D1+EC&N?^
M,I=J?0;);P2[:V2G<1@12LGJ'[M2/'5HAYB#J\CT04WA)C)]]+8O(O/)1XTC
M6:=X*-.2SDC>1V9K )VM/M\VA6)GS +#1N#KC,RS=%E7;:886,U<?;$R9@N
MH\>W5]#I+5 = K"[AG4 U,\R]ZTHCP18T,\U%G2W@RXJG[? PP+XZ(7;[4V#
MDUP)NQ2C\<6R<]GPZ]S<DGP)@<A+/"^9G;J(-FD993PFTI(;8=3Z*B5HM:'I
MBBC1<JUT-1FT$4?H09DRAH\''M&<4$H^I_E2E#)?I#G/(>51%=02F2!3IMZ0
M$2OC$'*"6^9IHY<)7F"&+F'?/^.\PNT]>/Q2XCQAG^N&M&.R7B%YGP3-H4]J
M6JR[(VX<$]UAW_/NM/-;KNKN-$U--F3L5_BL3)VV)>I$;<V[*5J;(U"G9&_>
M?6D6Y]V_HLTY%L'05J='KKZ43;']FG'>]\2ZR4]N2VP?IL^*BE_FSD//L >H
MDC@-;V)KE)JG]G^T[RFH$/3J!<@ F\P,OYW2F^?:/Y_B[*TD%L8SL_I8.]//
M=[.8 4G+6;2DF/]0S(H5H25/,=M%>O244;=UNYJGBL*/FKV#BN,<%SK?XH(#
M*8!,!-K>[P)MDU0J[>$=UR"S,?M2G-3] F?>G=1N\I-S4O=AGG[:UGY_II67
MI,UKD^,C/WWI"4D]BA:@B&) MP,VF)QY'1*-NW<Z!D"$]3ENMWM[I^ARR(RM
MGL<A/6!>%>4@F;T#(ZE*UE">P(D1:RID1-:]<FG!"ZMV!\<UNI3P;H?Y=!32
M3%+T5-7"\(?+3Y'/0K&?:^(IH^06%\6?ZB3+O;R2A&$(GBDBF0_B-^OCMS,<
MT9S+[@;3&7=].]*PYE&1QO5IP*R"'9V.U[1F 8< [,X'#H#ZF1E^RV:!JQH#
M8AXXXDY\9S+C>P!?GZKEX+M>G.04X5*,QB<+Y[+A3/]_-TMY#O:LC%XPO_KR
M.2T [H+0_9^TM%N[>;NZJPS#CV;^CE]=#-31$U 7FR("&F+0]G^<I-[I#_"X
M5AF.FB^=81\W).<.8CL%@OW85)T'C3<^H&Z;JE,-TT873/$NMHCW\HG8S\WE
M"S MWD[]H+MU*5%64TM#[TM[J[S.8?IG#7*.<[Q(-:])T6[=J3:.H@BF=9]:
MR+BNO:^1G81VR8^NLA8I#METSO0:G-#U<-YV2J=G79V%]7JRE1%K BXS40X
M$<"&XC8X)&0;O<D8/JTJ"(XZ#%<@JG7XSJQW 0[QZA[)]7S ]L  'J^>X86*
M68)7[D#@Q0+'<!LDMXY0FLK.C&V!KM.YW !?L%G^.-#TV&#F7O55@YF[ %#'
M[33F?QNRHNP96!, 9YK\^\99F6V8?#!_/XZK=24. C2_[+(1];36C(9=#=7#
MXD<;?\_4K_:IT3V@8W^?[_!M?]LEUTY3\PS'>US+; RB1XTJJXBF409+ZFHM
MDFQF58'A0D2'.F9&U;76Z:$+J8<U8H@P-8C1)X:8>90GK)F&4J*CJS:&_D02
M>NN4NJL73..TB.89/KBFHOX%W],TMGX%DAYUW^F\:BA=6X 6C#/4U-U%==U=
MA&LH: -8OHB;7S2%Q$8JJLG(>YN^]T/D.6Y")VF\?5#_JF!+Q-Q.UHJ@PLW1
M^]M"$.VZKX&B-_6S7T_X5F);PJ ^)QN-<("I>#YN;.;*QF9;M/Z"Y"7E;DH&
M>5YOAZ;E,$A,IFB_B,-.U]LR^2C>X4(\I?;-7W%$ T[5@03G<-H.*0W3V0=[
MCQ>$,MAQQM8DZ2*-Q=%;\;7>_IALDP[VS<9(3V$_;0RC[6TG^SS1V'\3VU%[
M")OH^QL ^?49FG- Z CH]I=1W@38M)*6=<G-++7!\K82:*:7YA*6H_A%2<!#
M8H8NS?&^%P7F%6(9]E<,CD&Y75DX A]N!?+SP44]Q\'"DJ#+ID?[2Y1[T:.3
M7*JXED+U)8T7T3K9I<\-\\M2ULN8WXSK88730S#\0N8 F-?U2K1<4G[\':4-
M"O0\?H/Y])<E?:/M9O4Q.(2&WL%]^FOT 7?<DM3SJ\Y\N6O%M?0!)?2+H/7_
MJ;C8QC@3$O-J WR4I?&V"D,"\6_\3X$=(TQ&V.%W4JCO8KAZB5>@.<V*NU-F
ME=[1-,V#;;N6[^;JCH8Z:LA+"KTCRRK';Z+%1+_2=K@FNV;];&6H]"WJZF.R
MPM4=BZHXH:$IS5:Q^(J[6 6M$X@)S#6-R,PA8@0*O)=[U1^[.4/-Y0@"N7RH
M9EK<VR_(]*3.Q/,U'.+_YS9OE"VJ$&19![&Y;JP(\3),(2-:;"$<9=Q.6DM%
M4Z7B/>;4B69:022F2N=;B"<;$QH>=BM!'HFQ].LR,1NP)DE:ODJYYB-/:[HQ
M/:TZOS2H(3L1/WR,N4218][L]")*Z8Q'AO@U6W5\LLZG%.=TK5AJ=3IN;;4\
MGG#6^IIA1#SRQ&^8JX/X\.MOBN8T^DG8:XW!5[?8NB,Z^5P!@Z.TDBWZRQ3P
M=?!V]'AFLY*BAPA/90M<]SBGTL!XFX:.3[-E^!EGL^^M3D*J5-Q.0;)HPDU
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
MW7F=L3Q,O4;T]4*!F <U:-#PM,L]/*V*GN$S+S4'B=CAO.=02*>>[>6-8/9
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
MD$.-M0&*_FU-'_.(!$<\3"OG2<(86-3_W*;YT=)?ZEGM":>C34^S3TWRK/F
M@#BZRT/Y($/<)4HL\SM1G:\A4>*?W(#=+6[8PCQ?IO,,#YZDDWM)<YH:;MS3
MYD0;!)SJ3;<PI$[/^>F9FN+T=VD2G=$(CQWV: <""112.PN.O I)'2%Z'/4W
MM\"E@'?TB7SN7[WT/FDZK^Q:]#VK\%L:"45 .^R,TL'5KOFDCU6>ZWU@J(:_
M6:6QVL)'^CW=>A]C[;N6KQV R2U_Y'E/M!GJSUS=DX)9_/^3;GINC!U_V-1H
M[37JVVX)XHA1#W.]K 1[NZS7 ,_\B0[D"N,[>D_)<YK'H\+3\[BI^!PTZUN
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
M](N->.SIL5+,XW@8?:P TF=MF]5^U]D*@-&8C,4",&Z\8JU>NET!3*NO 5<
MZ>++70"T-5AI 7 TB)X7 /$*)U6&[Q9_J2+*%"%[W58DN<D9_]<<\1-DIS[A
ME_(]@_%KWX+ I"W=!8(.3==V< NE5;*F!0;]PN$@P(,XH$#+!J/Q(E8'P:_4
M"W3X%JYE;6[)&KYE3N(-30D>:-FUG+;O1,OXE;Y9&LW3C)?P#2*2,FPF&KPS
M= #O*=E@6KY"C?7R/.>EUS<PBUX59;J&7)M/!5Y4V2VSYL6@K;35G(Z;:$#6
M0TE&#@UQ;#S3:8ON#&WQ(0$0<83*9C0T2S0O(HKF5<9\(4@#RTA14<S=(O"8
M*L&-+%WP[&I^)W'&D"9G:+-Z+5+PHZ*BP,Q!K0J1>,9WD< @9PBVRRMQO=F\
MR9X%QN>DY/EI.2]MSD@Q<%&& WA>-O2$V![I<#/5;6V<7^_KZM"71W<FJKYF
M8<[J:M[76>XQ'#KGH.SW36-YR:MJHG6:I^MJ7<_-34WPLSK[$XOOPT_4@P+6
M,UN/<S;4.JCG,M4'ME:])O1S1!/%Q9!N@\8K(E7"SO=1:F0PX_3>U(L 'JKQ
M36^EI#V8G<LELQ$*-Q,]0-$C!K_ Y^!>M&,;$A.2Q-L6YJ4!*JX%_? @Q,/=
MI]H/"VZK97C?8[*E&3HM#ZDG.*_[NB./R5>(7A6/"P_*:Z#^W7?O?AM<ZZ0$
M2\%3FE;D&(I8DEQ<5[,M/5&'8>HI3=%ETF[1V&=2INS3:=J!@[\$/.X\U0#1
MFQKBU]-SG/2'M--S,ARG:4U1YPMFV SGJ<XV'$U6>[2F,F/M@7(Q;1GV6N=
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
M)@<."A%)DDW_8SCH5'[&&([1;@@MN<O"M\2!5[BYH'G>7-#,STBQ;^/1)Z'
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
MZ$:CN]%H](NQ>#"K#&*H..ZC%QER>!D5Q>$C*V0[#D[H.UIR@/'F(D]JS]]
MD(C1'!A%,1>6GY:%,Y&:W]+/^:H1;\4<*5+'V JT2(T7$8B1!C,A\\M>/+[X
M:=0J4=!/I5AXT5]XTN'5- N,81EKN8P5>:#0<PL>,>LW=]"R3U&:-9W,^:!]
MS)7C'J)VX#OQAU2^?7(-S94GS2-1<1TFR:+G($T(L3J 6=EE0RUX1=<4&E&V
M3[5UH^0Z=?*]V*.N"N7-NFM2!.<3%(H=4HP6I\7H2@O@O:A/"WC.5BI!:%-!
M2?29 3DUGM_' O&*%)ZS64ZE+DW;P(ZFX;P(5JQDM>F4@55:MUEL3,,4HG:@
M1^&KA,J??H1RB/ G^*HZ_"#:Q@J2B(EE[T2AH[->*/Q.-D*L.[Y"E\0TW\._
M()HPDC7E:I7=M3X4CV>BI"# ?&I[O44-)0,H9)NZA[GB*:O&Z[IW9GR.\OV:
M'XKBBC%MLTX.-3=5E2 "6*A*7 QM,XMKM&"/KH_,T86NTZ[IN>TC(]3<_S\V
MY[0,#YN:FIOI.4J/5E+)CE24&_P&&XO7G\NY4PU<1CM65+A^<X:X(C0+U"RO
MF3_JA0&#I/S&C[XBBLF?699PGBFA<?.$*+A9U7S3TNZJ7,5%#C(YTZ*;^:40
MRN=<0J=L($Y=5J??1.]#E@HO?[^OE^(B:#(5\O*' >GKPH?!#7,'\D,#3*9%
M7;JZCYPLZG+<GK)!D'P?E,#9,\=+ILV2CY).X _;7<8.E%_3I V2U#2,^S3<
M\9G#W+>,1)S9W"E#S?=!TKGH(_$-*/Z96TUQE E/' 18 F9#^@XU 4;+S0+D
M1;?-PFBV'#M>+T*/-1@=*S(IGS52]0N B#A>XJIQ.NMHO5O(3I>+WO86G<A%
M@TJ2GSP<I$NJ7E  /84336:^$[[KQ!UU5QT-BQS]%ETA;F!.]^7A3IKO!HUQ
M'"<KFT4KTP/M?_900"Q/[FB4?1"^DD&.T/L8=5"I)G7-$Q*PT$8 FDC8FISA
M=B%8WU=:$DYZ^LB* UQ@LWTB>A^U.1XD>F![N-L^T=H_G^:BN &G WOF-]MR
MD^[X[YJ&[Y$(<X%Z#V(Y(93R),NQ>>3W74CXN%_F1&K+^-?HLL&#L[JO%GS2
MW#5TYLL$<=E,BOEEI-J\H.(<N!&MCD99:?)[)#,IYW6>G0<;\?H!"@N0NK(
MZ9466!&)3%@>FZ8ZFTW*,)TC/K*"IH_YY;XH:!X?[CFARTR<(;]%::[1S45_
M L..$=. G,=S2PQ(7*- J@Z'H#TA9NS!0#^(N83URZ@7>94F=4V6KVW$[8<7
M8?0D4')4)@35/;0^1 6$+I1<M<L*)8?A"4:R;SQ 1(J"0\R<OWCU(),.=,@\
M'A_[S )LGNFC#]OR6T :2SM;?4D<^P[U7#,PG_/B%#5,4M\1T7=".\@[O@X.
MW?SJH+("REC NV<D:\<-?LOOD#$K=JR) NM2(9*&CAE]A%LDQ)N!=#]OTG@S
M,!=)RRZ C1MZ#X>ZC):((Q,UIXBHS=?$JXD27"'>-,:8G&EO_A*.S,E</=UA
M5@\O?]EXBA-HM8#4.VW*3QXGCI+KNF+!'Z.T@)A&JMW=%C\!YA29!<AG76I
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
ML:E'X,^V]JRN!2$;$CZ8:!P#TJ) %K$>G#7:+2GG2XK;)5&)!MB5[+SR#P%
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
M:N",3NQ:/"5PTD(G )J\@O_]$=__P/*2<.59[NA.1L*6LJ*X7&G:KG37K31
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
MSZJ1("T61*)! (_7;P(7JIVW$\R(O(:=J;[0?9$R=4.JH;]C^E#UYW%>T4?
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
M[J,H:GL3P!* &[;XU 1IV3QZG?)0?TF?^$_\E\VO^/\\1"7EO_E_4$L#!!0
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
MPC#K!(S2,,^K:LQ5WGU93&>3 ^531OCE,=V[*D<@YV"7@]L,2 80?4>G4S$
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
M9UIX[=NA(F<41-,YF'*&43,MT9@S"J[IP#USKA$T;3V:YQHPH^!--1ZO\5-
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
M^M=\%D;L-WJ+D>**3J# >]S/1[SKTJ=,=.,--'Z">?^@^_Y!N,'3Y_$X=B>
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
ML\F_W,^],)9%H:>%H)RWY#")WU-5E]0&R1'I=-OO]L?%YN@?VX997%\3@A"
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
M[F1S*?;!CL6E**9L$L=)=?S=4%WSHLRI:DGMC.BO,LFKOVNQ"QUT:,*0O%D
MZZQYG1KACR!$]1=F'=QF$6$&PA6J_U>/9?EX0Q,!\.C5&\3'\OI8WHYB>?O4
M57VX[_F$^_IB9X,./5PADN"8?I\40P03U91TYQ9,"]FHJ< ]1!L.]V'<ENIT
M?_&&XUME8D6TOSC#\4D*;*KT%W!8G_77V0@WXRE^T5^$X< O1#4 M;_HPB%N
MP#9P90]!A<.] +OUUO079#CH TL-^S?O[OX8T-N%ZH!!.*=73ZW*Y LZYU5U
M\F=,"'ZAEY%V"5#=\0TZJMN1Z+W0)V3UZ(6^N*,'#T[7=#8NJRF[":,*.^)7
M]H3VZ:I"*3L,\NFL_I2DX*B@;:\>;MT%#W-?M]M.1@%>1A4K[WVQ)XJ'\O);
M6B3["CT73_3S@IJGPK8#(%U8[532VKLQO!NC(S>&]IGE?11GY*,0GJ58\=QR
M1BIRMX7\#G(&DI<M$0V=M ?0?<"R@2G&SJP77W%ER&[/(<*74E-D&!A2NBV=
MU!.$!!C>,H($IM #2,8 )#4# #"#^H@(>'F8-!79S3S)XLMPE11A6F5F30_1
M7!S34=PI^,$N.[=93L]K)O/+D) -E;.PSJNH2V#QN=BW='W-PMHM@^+=JV(@
M?AKZ6:U1V_KIF(&1?ED2=LFK<'#2Q4*59*IL[%1M#N%-32P02D_,G?F@?$C!
M.ENM5GU$H7@="5I:*#/-[#4I?G[2RN9)ZC'<L=I)/6E9'L(](PC7AYD/&6]9
M(_*,AUFO0L4PZ&&IC*10C+JYX1R,*90/7Y,^KW!Q@#'77U3X@$\9B9[<7]!W
M@9DY-$")J*%+_05\#W$720W!\PKLAN,K/81Q#[W>EAX 8MZ7]%.09+05"HKP
M%>5!F;$4XGG&= CVI^"9CC1+"FUGDN[X!KU)[4CT[J03LFRXDW2G$.9/:K=
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
M.T0G;UTJ@GZ?%..H=@8"$%TY9]H[Q;50IQ[.GC'6*&R':#IW>BE*3\^%TU\
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
M4U=^>+G#4DOXU.TQ3(X$!@A39XF"'4,4@T[=",/>,+A!FAUUT4.VL(^0^N@
M<'9C1PSP\C< LQM!0D-(%KJWA#+^)RK0IOXK03N&CN:;*$<TX(PS5$3/>Q91
M)M6J+*(X3VC;FC]0***->EYF#W74*6] 'ZVAC^S0,R*K-,X6>7*?)Q7+RL79
M WYCQS2;+\8O("_?6X/(].N@HDQ7?+'Z6VAX=9WPR..&3,1_OZ"9!B$:1DUK
M76KWEJ@D^$RP'AI$>T1%FC!V+=B#8#U,PNQZ)BX0W*YSCK0 NS-1EJ1U%@Y*
M+&IF5=!3O^9"\(-M ]IJ"[AL!H*P=GEO&X<8ZU55T*"U*%JY0-7G1'T"QATP
M;CT8MZ:%)6#=EX%U"Q=M++543MT<<A,V!BU.L[/),-HYO,S-#LD;<I3!G>CL
M+-*;)1K>($S=#I 957JO.SN\%S1<!H&3J9L%["NJR!K80)[6F0,;2 ;3FKK7
MV,S >NH7(0/K/ /K,,O6_<MX$K_BT]WFT< "AL39F5CF$F?-P664W%[=/]TL
M^M( [UNH74/$>7D73"UW9;I-_U=[Q.U/=H:]]XY:07.]UPK?(#H>:-#"7D!_
MSE!;W6>Q99[<O/APP.AX+'^Q6J&,#@]JK-,G]*;VC+PA9"5'"\%.AL7%RP_"
MN+7X[7#T_Z020Y]0@&YZ7;1^.C=)&N6?-;[KI,05JP##PM1K&DS0R>@N7J49
M_0/U7Z$-ZJC7+E+8,F!!4DZ(@A<[J]<NT]CH@P/W_]*^<#=HS0I&GY35^([*
M,JOM7+3_NGS.THWHEDFYARB.$UWZ#J\!7"V'NSJ](X15'"P8_0\52[I&LQ%1
MI<4+^PK+]0UZYEU/,]C/Y36()S4 VWU(FE=4PN6.+<GL6,85HH.]K1]3%UVC
M*I"8;L32/";[>G<C=5N/P3>Z-61;Q+,WUN.T<NK/#_&^J\+4U*YZ()A^@W+/
M9IB2CCQVZGS'FG"4D7] (#.(1&5TVJOSHE<\F7L;.YW[ QDCD#&<0W!F@MK
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
M.T[B, +V#.:N$?<>:+'GB$5=Q0'/<P\8=\N/+&XZ8P9*27X 4ZDW%9I0?WX
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
M24+X!'B-CFTRE.EFQVSJK4Y_H/=-SG5N]^N]OFG7!\UN#EY$O)>KH .E1!$
M,*[)@K4F*M8:V% S=JGQFPFB6? '7LC20G5-.^.#(&9 :J.FH89Y"B F&QA6
MKZF;W;ZIM[I&7>];#4/OLD'=;IL]F[7R@, '/6(/6LBCR"5]HH&W%0PY<K18
M,I .EPS000@@J HKQZ]0?S%O^K__\X#+_1AJV, ,M#"UB>B6T":P1*4-;#\.
MHI$&;!W L_ 93P22U^V.80"A&J"#@%KMELY,RP(U &3J&1VCQTD-1,QQ0WP/
MR*;+PM"Q'9-EQ/+X\N2;!GH1J8=+T8"'48QL'V4[_/#7OVKP?W_1_O)7X0V%
MF0<!7I)GX'7??)!B!%@"GN(3'_&WOQCU6K]1_XOVUVP>$=?F\4ASX6;QIEZK
M"=?<^K@;8,!!4@#O[$'\9ABU;@=_/@>^&],/F@,$,"/Q^[M&K=/O_.77QU<+
MZ^G7ZIWN7[0G<%AC4&\VNUQGW;JEMZR!J0_Z?5MO\[YMV/!?P[+F1 7W""#
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
M;W3[!RWT7<=*OE0U5HQ@Y>=F^]7T.)U+A&:),W.DF2X+PY5S:SFXI?I . 2
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
MNV-@;0>.2V,Y3#SX!_GS3]HR3(<$!>P^4?K"+OSDXE @WQ-'9J,90&8>NOX
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
MDW4K:N99DE[!-*UPK86ORL3D<("&4RG*@=!*:% YX3FSK)F44"8^I$ O8YS
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
M^#M1S?E3340]!H\(F<"-#V2;X*_68;?]2TX>I7\/<.".#G+P9/0CB9_8O#\
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
M%GCS+8-:HH(11MEBNDI+AXSTK)JIX'ZC*LE%S2"R@DT2IH;@;7K>A?5MHC5
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
MV_ U)^IQ8@SF]97+\KDUYI71,.7-P(RI38MMB%5VI3W:@'';],62T&96(@6
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
MW6D[P_1D:#ZXRU1L&>>//K=UX');'WMN:R5B5X4-1Z/&JA>L.M\6Q4<UL,R
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
MS(4(,)*VWTKGA<C7D4020;"(H)0^MR <&5]"*<@U8SN'H:^5C*D-DC9IJZU
M&J<;Y@:8H1;/JJ TV,="NEOA];Q+./A ,L@@3N0^5T>O4:FW[^*<\+L1CABZ
M@OX!1A0(&CS'"$AAJ3_<A&0BE.RVX.&-W9#&XM9IIU$)4E,\:@_&M['M%  '
M 2SEH'X95Y<TJ>1R:38LE3N1<'P,X9*SE?*CRL+H$8[LE/+6!&3?B\4"NJF
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
MY4T?J/2OJJOK*A\#E%.8-:ZXM6K2&\LM*4=G'J?7NC[!VG\D@E(]Z/UGO_]
MBYQV9/RIA#^B/J^N R9VG9Z=]LX,$?H;2MJ53+65AU5Z%.?=VM#U2D'(4A%#
M_:KSFF@]\U+5&DHMBM?J(L$J %\5@"=8!!D3Q9ZZH/ X55Q6&Q$P D,.10D1
MM<E2\RTAL#4A,_.85U*G\NM@G?,E.Y<94TVH.9RVCQUN0[Y#XGA),=;E)TBD
M:#=C)@X3D[G8'E[&R/XL[%O'SA0+2,UK$!Z ZFIH7JGO4Y5B]^NKYV_>F?G!
MS^D).OID?CIGN,FR=SP O3C%]&Z\X: S%J9&BPTGB8*5L"C16KY&A-_9S-#1
M!XM,R-+85)'+88*Z2,(EVL?JKH4>P9Z@-,>:#9)>4075QLJU0M>A@'.?I=>8
M(2&QA<W;H$$>+@L<S3OQTTK-(1$ "%R!'Z2<$5DY)%/FC 6$.=H22! D*L;K
MGDQ;0@DL@;)JT-' N9)SS*_F%:"EU%.B<MEK_69I6W)_E\*3[-%6%RG]Q9 Q
MDZ5F;1=M5E&B.M?]4 XZ264S+VDF.(U%D@%GE<IJ#<W/;\C9\LHIU847@)TR
M,$F$S.F!)TQBCP_=9( 35N5L-W@@,ED 4BNTN8!8&*IF+.U07LC#=>!]W>C<
MWNZXR<&EE$>?S)DEHU::X%:)-ZXBNLF8R50_&)FVDE;?@GRM5-BGQ.),FR:4
MJ?JR$OQ #\TWC2LB0T2^AO.1*U$_/8EA4Z:RV>@24CG%T4=*B-1O\Y*2E"Q\
M52TZ:D \@Q#K1273K:BHT*84-E@9=?@)^189Q"H-QH'='QL"I_Z5FA"9NMM
MU\!HT!D6)CR3L'#CB,X2G4B@;NTK#331CZ(_0AG.U:8=*:F++#_NR+*L>8,S
MVR%I.QEL4P8Q?0Q+G(1=GD+&*H*;*3.-*P&:\C:<^#KQ;2?CP@ZN4BH[A7M
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
MM 0KH*"G*UB]HU]Z^*/=-U5I*'%K3)GG5OG7FOI8'\K(&@I]XYWYADH+O?O
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
M=J#B.AX>^Z-!JU>6'1:*[O;L0,6U/YSX9\>=\C([)!3=[=E!BBMBL:.X.F/
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
M%TF>;YL\(0@O'8HU_'3V[M>7_SIK1BC[_<>'0HOR&T(O^DKFIM;'>_O7'^6
M.G?P.?+/9TYMDCWF4N-2C4. C8B@JM>7D4N86"YAG3H_'%K-;Z_?'UP-A2#U
MM:@\V^?,68/>^-/9/_+$/[MEYGEV\9'$ F#7*_@%<>[Y#^RBL1OMTV'N_27L
M^ J>C>?0BN[U;^Y<AC!6TY0@1]<GOD.>G!4I5[$XX$]$8L .>\Z_T35$!L?>
M^W&"9 H\4L8RI'D&U$N<%(D6=)%M0LJ&&+KI2,M0UX"_HRP! >XS9*/X>Y9A
M8!=$CO F 5U3**RQ.M!P4N'J4Q$J(4Q(MV'$A& 87+KP_<&&0[2 9)Q96"[D
M00,[/DAH0Z!&H(O+82B%XH "A)?ET?BHDU8,O'92&.>&CVPE7(0%;KMQ9#^V
MR8JDFD0Y%C^=]<^ 3421S&$H_\Y 8JJ_:ZR*F,AW+%8QL"H#@A+WCR9O>#<N
MIA_,X,E&XG^>;(^GW']IY37F6QTTI=D?.>QZWCT^M+=]%$MC?_GLNAQ[\W=!
M1 V:$NEPBKI=J3\H04Q1S+2TCI!PF!#N%>DLBF#%58ST$G3W+=DI,2J52Q$U
MP/?($D#C2?=["W4@1Y8E"7[O5&^0=&/IP=+#=^\"7<M1E/AHYX"8!)3U18('
MC]<DHLCW4"K NO!2F2_2UK8H;%&XE5V0&KC@L;^&AS^5#K. '\A-6"1QD9%"
MEL328X1_\#@3CY%]"T@-^B+:]OPS]PO4GT"5BP,N?M-T)! ;\!_4KU"FD+,'
M%#,_#1=H-I8&'[WV+DT^[YP/RH*TY&+)I2V.+R-O@KF707[A,*TS]3(?4F:>
M$JUEQ78KLH) (N1)@F%?->9!*X?\JKD<F-0FI#..KC:A_SS#P2U!6()H8Q?"
M0M\4L4RFS9RK,%\?S1G&.&X,$H'^0C\^Z/<*ZP\J2KUO0.S;,Z_UK>M^NN&L
MUQ]7WWW-F;;E!%*NC:8?)T1'B_"U9R"O4U4CSJ*=C!TK<%5!)A6A@=? U),^
M9,$/CZ4E])P_*LDOUR*R,C D%B7*!=5<7@(,EN9V6)D>K6'*AN=IZ),;!_.:
M.&)C ?PU$&@H$C<R:9/*!' ?4XZ(M](SE&FRHJQRS%J'GSG%/[0 VC8%727<
M8KW"$Y&8\N+%NZ>BX.! 1"JA,068\4FU#%?$+-'[Q)P-.I-0?8I U1(*$D4R
MB!J$'%&KQS^%Z9S("!O9%:RBJ3SEE$ OI)&D)R6&R(UW/?@QS1U]>"6L]P.G
MF#$'T]^O$^MY6%)+>/% ?5DDCJS@,FT7>_YPK!L)84%,Q+2)<*5O/".', ")
M X-0W+(B%J <Y407Z6G [_Z9'?84$\])BEQ&KX3GO/1$^\#G+C&2FQ4+Y 9Y
M2#R)DL#DP/B&^AAP,+Z(8Q1;M+_*_ /2-BO^!5QRG03H;D^23Z+<A+B*RFC
M#(B_@?5G02B<;"ZL9!N*OI-IX>?B#"3CD:/A&8A,4AEMI-BMJN$Y?0O-TK61
MN]#42R F#"D=C'S5S#!%O4WK#M-/@0"/4'(9%2)BU-W@Y/->B(0S+(OCZ66(
M+\A$'TV3HLR9F/,@ZX859XG&R%T *Z_'6??4Q!CT=%3%47U?ATA@N",5@7%E
MN$8GO9*2\*?#%"2"L2IP5&4X"XE8.0.U["Y32JM;->=$&E29U%=+X#F:(H?5
MTNHL29^1QHC(DJP\M,>39V5&'X;KQ?N4&2#2H\(H*H2[2W#.ZSAFZ1^C<ESX
M*49.6,7KR2R3H42<0>Q"Z5T-+S(N:=_30*EB6?V4P (BCS9O8!MSXH*RKTK,
M0UW,1NLM4W_83+U*:R':"LAQT\QI2>)50DS_$,'"^@J1T=FH?<9J<=TA5*8H
MU[.!W:I4NEZ2)YA4#M1:3SW.J.(,644SKQG=3<(2P:8;*B_S^E1E:X-8RFN+
M\I2_+<?4-H=]0LF<4'D96,L)EMQ('^6AZAQ%=2P @1626*44ZQ42RY+C\E-^
MF4275&L@LNJ6JL(%W?$AB3QZ5.8BY[*\3#T-OSR#U5@*L1322MI!JO73 -H
MM0P,\ KS,Q H_%R4?M5R#"2-&!H6FCRLF! <9H25// /A2,"GK.0 M++),E!
M<\" !Y.UB*HISY/PJ30BKM8[1V=U>QHW0EE&%S!.R"*_D#K 09],(Q/Y<*:M
M<34^MSQE\V2"A&>DQ)6UG\(,R]9)$04R:YD<6@L8(B]RRKUV]7JK1/J9E@"T
M3#B3]7A25F;[' ^05<&LWA[LUC "FE9Y-2 9CRS:$1>B+ >QZ%U2Z NO]%)<
MJQ-F220K3TE.[NU*AB7#K!DA8RH-'%8E+-GFHC_008B09&VQ*;>6GI6F#UN:
M7L,SJ#!;^*F1!9#X! 40 SI$93*3.N44MA%L>TD,0\1_]!>(D6C]*BI-TYI:
M%O4-1?VJWXI;"L(FM@OW]562?B*#2J*^",M8Q+:(;21B4^TS#$I]+"F=NNE&
MD#D\^R@?<Y]G&>89:-')\GTL\A$)3QC@D0T)L:A.Q2\M35B::,=K$&'N#-B@
MU_:M<6K.A=(U39T$1*;*@B.?+P?!9+]J#/++8=!_F?,8C)O2B0<61L3\*LHF
M5"=AV'R16C%=YZ#L$2X/.;;5I2QYM;<+$7V)E)FL>W)4G70ANB9>X\KY^IC1
MU3J,.!%+&)=.[=)804$6)((.&4BNE?"%U[M[4$I;66TJFU\T^E*)7)UKFGY<
MGR)<.1-LIHZET=9V(6F'<LXP[W[#=B4U[J>ZE3D[V(X=#"'1ZL 5'C#1#DOE
M?U,8E7QN(A-(D)ETR3Z0W)L'WV]E((_4]EMYL/U6?A&%JQA/<844)/T2._JZ
MV"%42:E"-D8Y4)!QH"97>>B19GE4[Y#[Y?I;:C)%]B+#?G<AMBC-9&2 \EN7
M,GBS7[E+<A?,PBVZZF5**\ZS2>(0DP#W:K?*6I>JI*;>'Z*>N'9M5.A)5BRP
M[X,#(X;8V"O:B2[)U-%&YH(=*#/3>NL"B)0^0P_^,U.O2S@<ZD_UM.?\FY22
M#:KM!]2A)U2"^9EA]8Y[I!]?,RZ/(?>GKM1Q<&@8%#M9882$;;>1NHVBS$+;
MTUX.+=45VE16CLL 5[#!#H[S=Q&LRB0YK+/"G!OLHR9VI\7N:EC0#.%1:[=M
MBI:2L':$QB9\"Q)Z,I;B*(C=!YC$8K =8767AYSMU3KD2^>7\J4_E_"$*"<7
M BX*19I1^;*6#RD3E").15DW3(VD+F;5&9-@7HC>2Z*]9;V$K8I!*1T65>L#
M_.!@-.WDHZ O93NH$B>UF)V[=T;U6*B**LICU\/*%7S0^45&!KMD8:0Z4199
M50:GT'.5)E=8T;K<+ZHKN2]7!7/UE2(VIL"T9 WA1C05E)ZTPS6"A%FBV>)>
M*21VV]+K%J+=R>/!QUH-HK"@M*;_C41G@)$6]@9([A%3H_.HO$S(^2V)4#YE
MV)BV][#BP5(C!/Y(*MAAG?=Z=?0K]#[:0@@,,29-^?,QL_*(0:6NY+[;R[:O
MM5GO>AH_0?#$/YT-9M>:"[>UCN^X\/TN$5QN\^SB^0+_^0]>Y/'S_D4>SW^
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
MTWMODB@79$\"/ ,0?:(NG4!ZY!/)T]!'T2I^00).2(S*OU&W -D&G X)&YA
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
M)TZ AH6#[@R!7P"7J* 1R,(&J(/.GU9B'30)$4/&LT0:BFD..'-E8B&N ?^
M ]O!B8(0/\!]Q(JNN.2837XIL9)+-I3CNYGD))(; M_< *ZQ="<>PNT@$!&M
MDH*L5\6DGEW'QP2&KCGJ$F*7VV*SK1"56$@8.?_'-MMG"'67]+<\+?Q2S13\
M=9\["I6/20Y6'8V@56!C09*D>PQB23Z*DA:E<5IN !;6<UX79&X*T_<*V<$*
M>(<X&OSAL#00N@ZA>?F$%#E[L\(T D@^VQ)(&.$N4@2IN<"ST--"7!P& =,2
MT)Y'&7I8='F3 =+X7)PLHAU, J< )XZFI%R$< H!>"-)!["17. [/2>%Q0(8
MQE(."X<'&[L7G\R7K*$@O(0S95GVT]F[7U_^ZZSIB>SW'Q]R(<IOR+%*7\E$
ME/IX;__ZHQQ0]\<BY^/I,Z<VR9[CLN8!;9P%[$<X3[V1]%#"Q'()Z]3YX=!J
M?GO]_N!JR&VEKT4EU8#-+ SE?^2)?W8(1-_AF 4CD20-T!+8SCEJ\VB--W:C
M?3J<BO,E)#GF#Y9P;)Y#6PIX>:W*:\+.Q04R]C23?Q#]E8X$H&]IHG1!6W\3
M*^U1Z@0+=51"1XE1[:2"&N!"-2L5..L6[$V6(W(AET29[L0%^<X [<J! G'8
MPG '-3?(=)THT<Y=FI9"P]?,4!(UH#MGT@6.]D5IA0M1O&^)WSO[>QZ6  PO
MVO!&P0)*1"_70%^_UD#PL?Z3 $@K2VX!W=%IHF$Q&62DO@J_LG G;_"8A,R/
M0N*B>\9E9?5\FVT)<^DJ)&&S<D>)^4-$^R6HF[!,6EM&NGODA!LR(P#;#Q&6
MT,4E+4NM:U?WU6B^PQ]/'=Z X&]B/^4L(SL'@)5+""9;/,8"^-NNA]@O%K?_
M[S_(RY#D4O73E/X4>50(7"Q.P"2_PK^EE5G=D[N &9>A\+*R MZ$R7W*O2VV
MI1)8.C; W@'K--Q0_ +U2WW!*3D'$"U)/=PW-6E%9-&#:94FGVD<^&O4FXX?
MJZ6!,0.:;$98+<T[^$4HDE*C_PO.!%#N _)?R8L#[HLN\L#CRTA@;1>X+G(/
MDL%QKNGDBR*4";19 28*L'RP$2YY')+]3EIS1B&MG('QJ+RD:$)FRJ<*M$#F
M9LI!VX[/D_B\BGT**I"N;\U=*;P3-2.3;$GRS5+DS(D$8>Z=,2T1+.E4N'"K
M#2B[QT\"?B[GQ7V'TGN<AI1J79]5[7J=9-LP!Q4>1"<#)G&%5A72+1/[ .$7
M1B'Z=EUG/AA@Q"N2JBQ\$["<J;]J@5G-LHJ2TD^ 0 /AF:[HD '"8J^(F&[3
MEO^"V8[. S1.Q&&$@IJX#*YI]+0\A)*5[0M;1C1B 5=XMH<IRCD%.HFRN47L
M+02;$DX#^2!.C<I%$_=R-+Q@*"!H=?# /E,FC%$RFS-)KF'%$ )AS=<<+E()
M:;!,X+I<N)ZPPA@L+,$=X/D8^8XF&L:_@K(/6(92&([G*DD_H<4-%$=G#8RM
M]&J&O IG*)^+8N^^"*J6.-787"5>X$O$BK38(M5>)J$O[%'"&/)A^CRK^<4
M1)4G;<]O(==,ICQ(DD+Y0N#-*-G2\[JU+D5=#HR8EX)'0)*,[26&!(1WT&>Q
M&I27A"4X9ZEQEOBEXQ8>! Y[ ,$:IOEUSCE@7-LDNV^[N!VA]S/I 43X"!@G
M Q3B0LL++T@PP1F3LT5^)R@)$ 'Q2*K/QX7BN^;3PN4?[RDG(M OE9P*T@@U
M).'SDH;)!8+\&50@M#A\"EUI&I"FENG>U040P4'!):'?\ Y+90!CBRG_+PZ]
M$\125&QLP_XN/4_"E2+#=S(R)UR2PG&%KBV0%'#4TH/)B M' *N O*V16Z)T
M5M)-'>4I:D>>1G2>%:1<(%/R?6 B(I=AS<.T$KP4+U&T0$N5;N7R8' _%>?:
M\  C"\)+52PRVG@N4R-4$.*JX@^XH CY-1YV%GXFERG8:_@38.(ZTX+/[.AQ
MB;?W*%;D7/#/;+.-N"M][G\GC:,6)YWX*A6JV@[8@ GA2K3$@Z"DEB %.8->
M\01Y>H4H-7_[$:W)+3EP6.)&!1^A-6EA#F)@Q"N%/)23IKCL0G!Q@9"$F'K*
MS0S3'ZJC:A)/$6. )?3%@F&)))5IZ:ZNV+B"$P(Y9P+!I&,V34#/9 M4(78$
M0: <C X#W,E!**!-"AQ]VA>SJ0C<91L4M:GT\%?87/,M:O!1E(11(>:G298=
M($9Z7" Y_EAR']H!GK(&M3IC:,3]RA?*(6J8AYETEW@" G4(0X^M"<41>53+
MDW)+>O09^GCKZ1,JRIXGS;.E["'XNAO9/B!=ZC9OPU,D'?Q*8\"O_EN$_B?D
MOU+:[$L4_*'IN"=ME\ML#[8- \ P;5!^HU50X@I9/CZL0L4? 8'>A9^8(W>"
M[[[E,'WB?-24LYK61$$EZ=V72!?!>R!9MQA7!,62TAY622V@"AR;0HU21$D-
MF*TQN::179&&I),"MA,-DRWB D<) Z$ 2]HF:J?IU9/_+5BD,CLYN20N0^!*
M:%6(K!^P%6*-T6F*G>X+$;$48/L@T9"AEKXWY(57Q)9X=5P+=/RE(A,E!O3)
M#WA)J@ (P#-$1K;BI+1N4%/#47330]/JPDS/1\38'V77;<259OP2N!]F#F;B
MW'%/,1=/;BC#S%68H$5FR(,HEE@F+I5V?1VS1'SR4&!<\QK T)A8A%B-C G0
M0$ H%((>XW#DMR$\TQ",U >R!^#W@MC)0C"J&+7ET ]55B1J+Q%0'WDVZ>3/
M,W8I3&D5FI+1S!O20E/2T_&5T5]5\<I4EH*>!K!*9!01<X5ZSHLH7R?%:NV
MDK>K,AA4LE%E?>X:W@Y0EB@RCY8)6@$!V[GZD@A,\K1I><KPR$+@9BQ%*2.X
M^6&!KMY%L[5N?8)9(^E/9D])VT2W;AA1P'D5TI;)*UF!&:=(S2$(RV03A^=(
MV3'((MUX<J4=A-FH4I<[%X[JRB+R13C&56)[BY8GAFK#^%QLB61[GB21=%EL
M([9#K:0R!L$&)3,:%99<:49:M/Y:7>=*9$W$1"\R(T#(.G2? \0SR0MTC"ZS
MQ1CJ2,*![Z"=B(.@UG-S-.R"A'P%WP$@XI#I8*E10N6&(%/+V9>)-7E('A-$
M+L!DQ?BE4*%("47ZJEE9A&HI"3_I)L@5* %MDX)L*F%7$#*4\7H01LIQR#]S
MG_1</:SSKEA$(  _L"7Z2X0A^&%=Y,ERZ3QY]^'=AZ=*A8?5">,36::2NF)*
MZ980R$3\,RLU_RLN[JT\9X("-_ (*,)$IMM4F!9B%"TM@#1<C9FC_B92U7-T
M 25;X'S(3H)EB$-I]D20"GF&\@F=["P35J#*"A?<75HBTIF6:^MU]:.FQ)+R
MH(%3QG*:3*BF> @^)=B6?A )0Y$1*N N^-O.*;:K%+4%L5NJ%%&N1K)9=:]-
MW=GE*E\GZA;"9ZD+L\,NEYJ-C>Q %\BQAEQH,A*0]CRGTI5\R%%#7SF8O%9S
M3@\>:VD^M46*U*9$S_IJ[+B&[SAX*EB2\%CIB<MDQ<!QK+"$0":O4@E%R111
M :D@UW!TADBZ<4 Q?*%14($%[+:0,HY1)PVQMTLAS ,MY428ES5W9,Q]],.G
MNWV&7?GV:@Q#F:!UX:5BHRBKJ_A# 4;J3LA/F3Q%/MQE@>Y/7=5I"([K&;@
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
MNA9YX\PF\T3M3>2Y$(A^F!W;NP/E3A,*<GD1J TX*I?R95/[45"GMN$O:4,
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
M.<50+!F%A?%8_]6A_WO]6@VZCYO@YH*G_HDEJQS*+MPQW$V]EQQV#X]2=ML
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
M\T1,M$C+GT:&XT;3)2$*IH-.2ZQ.<JA3IE9,=>J)NO2_;9_P63AU3=6%$Y"
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
MM3VSTV]-*DM+MF87H>T(A (K+KU%0'W10F30$@Z^( Y62&_UQV9O--*?]IK
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
M9%J9'WA-N6#]CIKMY(V,7Z]#X^>RT?SS_=?2T="TY<>2; ]^M8WK$$7U?X&
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
MSG:>89;FY=*<B\[4&'E"*#%"L5#G,!Q;HJ4RK=W%OF\&<\&!\B=6*Z+[?\T
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
MK F3BCU>S(WMN:%?,%)="H-YP;S8GA?'%'K$C-$!ORUG3+^2LZNJ XV8&CH
MM>W4J"0&KY*H(F8+LT5WME1RS%MA\%"-)UC[=:-B2K2-$I6$I=93P(9UA@YP
M;3M!MG.#L"+@(C5ZAOX ;&04#SPLCCT2XAC9@Q(Z=*=@\ZNP(/N''3H11^_H
M*(1J+SBRNY<IB6$LG-!+\70ZA<>'PKD?B,A.) ;^3L"OQ,%:0Z6= NI)[2:@
M?Q>@Y1M?!R7P9^.3X;\3_*NI7EUO 1VF E.A@<R,?@/Q!'O&,&]G"F61R6/3
M&G,"'P/^ <!7$BBP8P#-#LE+6\K]W%G$V.($/$;]1HMG4(FOO^'"/&P!,34:
MH(;6]7:8 \R!!CA032?C^N-=F!9,BP;W"H-*W/@UE,7A30+#O7HM4$EJ8KU=
MEUCP,Q.:$/S;>899FG/1F<8C3P@E1B@6ZAR&8TNT5*:UN]CWS6 N.%#^Q&I%
M=/^O&:#.P^ JM.=IIC)'FS 5'D.%2MSM%4:;[,B#)/R3C4JFP6-H4(FGO::H
M$Z8$4^(0^ZP&G/&/JJ"WN[&4VDCPAF:GT]&,"'SJIAL'AI7XYJL/2-E3)615
MH0?F<,#Q6 S_C5;1L!+W>Z-U6]A*8HHT2I%*O//U%&IA+C 7&N6"/OV>F!X:
M@K4-]-BXF="MD1/O(ACW#:B%2C*YZZRWPIJ &=&L)MC. <WBO9%8%JZB4MY
M":2FX;@W+GSJ1,;"=ATC#@R_((@-5TEBZIRTO(Q<Q[7#.PY[.9@B%O,"J'X(
M?.0OL$ZPEW*39],5O\!:@D#Q7N?5EYBSRM+CB7H9<94XR&NH2O*'"R"FPF%2
M#KT74_2VB(]A,'_O8KVGRR6^3'01E)N0_PP\T(DEH51LU3%%=J)()?[RFBN7
M,%VT 6\KZ,+6"&.G>E$[JL0Q76FC'1:PVD&V[22IQ#7=<%T1IH\V8&X[?2KQ
M9M=5>X1YH@UJV\Z3:IKF-E>?A*FC#9#;3IU*/./;!H0P.Y@=VK%CDY=\5$F:
M]KZ!(SO4B*B0,RE5>E9?,Y9P8)5V!-DN>9M1SK52-(POH<BD5Y> ( =0/%^
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
MC [<(5T[)I1UYKS/!(8S]X8^9.S%GSX@Q(-[.X871)&!($ZB+D*0T4;TPU[
M4'P1&\',B.U;_.?%\[XY'HU><D@&NTS8@#LZ[&S06I6XH6L(R5AW9I#)K]]M
MU\?N!F?^>YB)&]!R-R(Z#=T(%.+[98B1C/!YX'P1\=GLPK[E30YS9#^.E#6U
MT2U4@_FB#WI;P1>V1Q@[U<O:425.ZUI".%C"ZH/9MK.D$I=UPZ$=S!]]T-QV
M_E3BX:XKY(.)H@]LVT"435Z-425^[J:+NM3"H/NN<JMGC@<#S8C$GD'M.%2)
MC[R&.BI,$YU VP::;&+)=O[SFB))V#)CRTP_NFS4*MLE4[.JT#$XA0N#E :G
M? Q" =-G3)<A&#O3.R,.;3_R*(#)L)V_EU&,DI^C4-CKP\KLZ+"S7I>-*TG<
M;3 *!16=$E;OE*RZ0%$E7^W4=RXRP76:RBTV^I@GC^+)I!+OZ($B49@SS!FV
M2Q@[VF%G@[RMQ$_8:#0*2UEFRB&84HF?4).(%.80<^@0'*K$3]AT5 J3A<ER
M"+)4XBZL.3"EWSR)NF;7VJLI+S.H;0RJI!KSX\-2F"0Z0[8-)-GD9I]4DB!;
M?8&3YEA3TCU:-^YP,)=NNF6[E%G=H9]3&-98-]#7U;2&"Z>4-ZTA[S*,,)A^
M-]PH6@H'T.N(T! D\0W7G\+U #YCX0&LTA(JU,LF@G>-KZ^%YR#(#3%?>,&=
M$%A?!?YF^SBUH?L=OHN'7AS@HJ-,JSU(X1LB94LI^.G+QT0,7OGA5#;T^D2P
M3/MY23C^?_;>O+EM)$D?_BH(S_2[=@2DYGVTO8[0Y6Y-NRV]LGHFYJ\-D"B*
M:(, !P!US*?_9=8!%,@BQ ,$BV)M]([%"W5E9N7Q9.8M4B,5:O3Y\;\X(8)D
MO.)D>(]4R#Y-I5[MW>=6KVXW:SWMY9X6M'K<W-&HE0)-6 O"LP)\M236^*?C
MSXBL#^@&4=640H^=)TI)T]X8KK-'_NC8M7;'\(B>(^K%(Q5 +!1ZE2KF585*
M96)<AC=6YXU20!6EPH]V=6$8OC!\L3I?E *4J AL9#A&!_H]=HXI!2U1-K3(
ML(8.A'KLK%$*#**";D>&6W2@W6/GEE+@$"76LMFA!ZM3-RRAYXAZL40IY<%W
M4[C&W!DZD.NQ,\AJ@7-S$>P=^F/*TBBA/T V#,4#@R6)3X4X(GM00D?>$'1^
M#@MRGIS(C0O1.R7O7_VG5T5"]2/N4/)D\JU0Y-1WCD98/Z8DT(HY?SP31F=#
M&#XB[B+:=I.0T3&0V%$2=2EP@AU4R<E1-+U !4%?A*C#)N-00=J;J)''0&A'
M2=KEM!S?;6&;MTSFQC;:H;I>D%_4J%<0X]\05[R:PI+J*6 W]-M-S2PEDQFD
M'<&7$KQ?$]2R1J7;%:5\E@QGU[JZ0>0-U6OF JN7$G^ON#Q.=?J.\0X?,6N4
M$G_?5=4;PP.&!RK@@5*BZA5@4 Q;&+:HTE8H);2^@\Y)QD@PY%[^+5!*@OEN
M.R 9P6\XH0+!WU@M?FND^2Z;%)E",.I"," D+==[].!=-[:FCN=:26@%.;EK
M>5SPT@HPLT'LN9X3O1AH2$6AQMWU SB&4WJ[=%%PY902@MX!NN(/#PB40AF9
M1+DD0[ROR)<HG%QZB$ ;S' Q\7VHUOU^"WV71/&AAJ:/840-R+^<1M^[16 8
M5GC[(QH-X1!.Z>W218&(+"6(NY-N0,<N&(VC9C\NRT8IP=N*<0UZ,8OQ<QXQ
M^Y02]]T5]L'PB394>^Q\4DH<N$)\A&$=;0CYV%FGE*#RJA *PQV&.[3CCJ)
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
M>*1E49S/<ZM1<7EN J^1QC()Q,]Q?A\6Z&-W],B)@ 8'8*?QRJ#L]8YO.GP
M^_$K"0C(:>LWUN@KMD#"GWX:T"/^)KCQ0N;&+RDW?D^Y,0WHEKLD80=*[U >
MZ9XVLG<8CTA?06NR8"_^39PHMJY RKK6)1F2R8!$5K,.1C36/!G@5_K\7_F]
M7OH>)IWP%]G'W1UMP?*5>)_?4QGH??[S]/NIQ?^^#'T?U^<%UOTXG,4P61C@
MZGE(IHE%>[C1^=_"FMFK2R=Q/J3"M+K)"SZ0!D96I(*!?3;'GTRI^#:;P'C#
MU4S-O.YR/HN]@,3Q)8F'D4=[=IP%[KD3>_'-Z#8B,8+N\-U[>/"Y3]L<4T6K
MWFJV.LW>.PM^Z$Q1ND4SDEZQVU_[VU_T^9M>ONH7]:UZ#WXW=^T#RVQ^SZ_!
MA_0J6.3MA46AR"*3W&2>"+L+O6 ,HXKKBW[C%] ;0)OUX8=UT O(Y/.K !/]
MUR]1*=YA@GB5*UM%G]TE7_\UBQ-O]+*@_50SYA?TB[*>*QL23;_=MRG=6,KK
MT'J/T"5L>^D$+Q\L+[8<N,P=_(+UX(<#1.H2K.P)0A6%*RQI-@+;9Q;!&W!V
M#BH_6"\9JR9C!67XXL,+Z ;#<1#Z(?P)M^N,]A Z!:F=#F5-66GTV)J&3_"H
M!SHY2A&8[SC%J]<63XN3,'+@^?%+#)=RS*ZI$"8>\5_#P]S9,(G9$<%./PI0
M%H@^[/">P)UN6S[N&(C7R02[&<'2\#E@D\!V1_@23N,' ?U;;-7_1[N^]S_&
M<\/0WZ7KLNC%\^AX/A67;-=\V(-Q%,X>QK!%@RAT7"L@R5,8_<!=0CMH2J@Q
M!-L+)F8$BW(]G,9@!HN%5Q%)X(GT W+"ITRLJ1,E 7WS:1SZ).8_Q?FDVP8_
MI0CK(=UI#VB/;8L36T\@KRWX%^;NPG@1EKU&BP0DA@,DAJFE,]@]:P@[ K9P
MA*9(E>2^#Q:[ 7E)2>4%E2?;DOC!&L->D6<RG*%RZ%C!C"I42/9#V.W88^>?
MC)W$BF?3:1@EE@?D ><(VN,#7.53WPFL]Z"3XABA=0WDNRDC,R:&4TK&P*5G
M03"#,[XC=%#@FB_PQ4T?7:///OD=/2<4F#^+8RZ;PUEDO;M%ZD>.NH%77V;(
M_._F%OGAU#J#/9C ;K\L;)!#"ZYF+(ESQE<,,0G<Q104*N>&_LPEO^R7[ Y3
M[UG-Q[=/%4GL^ I: HK>]G#T44=-9XUE7&]Z;UO_@(L6>0G=G+9%&5263)2_
M(N"8/T*X+_"ZM7Z=#'ZSWJ>O/]C6&"[R_\!3,*1,=8@+H%MBP_4&HP0OI]*/
M<Q?__"7_X,0$[*T3$L!Z";5/HM 7US&]?9SA$#2X,,+K!NXF#QZ)UR*]:*:1
M!UOEX9486E>S*)P2D(KP4/% >3SV./BB,TIPFG@CS]]'Z^N'AJ/WS@J&HV=
MZAAQ*V+G[\2?D*&%::S3$%5TH9SBNKZ?GIV"OFA=G/X3%'?V516;_T&>O6%H
M77C)B\U?G(HG4T8O5.DEA9AKY:"04@T?90/MF+ZIGO'C7TR+ ?;>[!$-N]N&
MIS!+6"PI!/4"Y0;7WT^$&*-V "K-OI-@3(BI[5."JC^<**C,5/PPU6;H3)V!
MY].>3* $A@^$VA=/7C*VHG  .P)3 WV'&2DVV@)_H?H,NP>F"=6[\?$1F80)
M2+0P\&#;I%D8T65$U\&*KB]D$ EMI%\DOI '_P*Z3\!HIRY8#%$XT\1[=*PK
M9LQ_3^WFVPC>!F;YZDT\5/[?\V^"+<'_LF$^6SI &C5NWE#V7!"5OX?^#R>!
M@4#2>O!/)AZHGYDI'E18J,4B6DRX$_3G7  93C><?JB<_H<3@>K^&IM_(S.P
MW*W[S,O'?(GL_0^EL"U"79>R[3^=8!C.X"!LZQP>XL5CF*0_FPP\YU3,+F?2
M<$^B"[S.'6,O,/"0-K0. VM"$J8&2(Y+YN2;CKT83YMZ@ +'?X$7-' 8@H1"
MR2 >#8^BV@+,SK'&".H$T3#@KFTC$HQ(.%21< ;VN_^J2+CU?H@KWN;2 -\J
M1Q;(5[@?,F:$Q_V+Q,D@"L,?8.4XP&>G;!:OFS@#)P%^SP(+*==[A+MSP1S
M;S,A -^BK@PG0IY^B#R7!P3P]D=6#Y\"X;D0'$^X6QXGX\<AU8SF0B?N(T@Q
M(IY%?# G(K ;AD@)X2AY$@%M[F]ARD8,9YW,!T;X&KDALIFP$= V'H7>=;Q\
MF?=UUY'R[S"X-P)>#9*S(=PA 7JB;T/?&\+9JZ/C?1,=KU)2;1P@;^@=(%]O
M"[ZGL12.PK$R<K4$O5I:ALP%[C&?N+W[@$XVKAAQ>W&1P</ 9*7;_C(O)-J=
M.LB)10Q-)2L%&SH8>E,?'LG0@-ELJ]KV_89O$5/P*J)6Q!6IJ>XP/J(;EE-E
M\+;&Z.UL$'M@S4>I,H 7<6X,] R$M% 9>CJHCY "U7X].[L]M<Y\G_H*(V%H
M.!,V((UL1$X0,_!X;(V=1[A!" G@]@=C(I >GIUC)3'X93P[KQ54RKX'*3#4
MS8Z*),>"?E')DFD-(WZW(&'*KZ_D?HO'(D6$'$#F\URJSP,CC^%F]U\LWX,M
M0=Y\!)N#R93I+!J.'70@4 '@!& <># *!1*!EH^B 43,9KI,,HX(84;/!#X?
MQVAY@)2GKH<!6:@,OS>@3H4"(AM^3\+AP"11&" HF06L[KSXQP78Z5Z"?^7D
M3ZN^'_DC3X\J+W1Z%L[O^(3.Q &- ?X_IBI)&D3!<"R(&C>$41(D V3[C1TI
M8<!%B@2!'#C!#WSB9.8GJ$=:X90",<'*8.A((?!2O>G4.G=\]%S$Z#EUR32,
M/:8CP?1GZ L:O-!5?"$@16&(2_Z5:_P8?PBKCJ8A/_GW7RZO+SY8LRE*-AI^
M&7GP#-2'<F,A/O$902:X*?@;_A4Z\BS@8^]/#E8K]TK.O:HR^4I8J1N1,*-?
M;MMF>5O2GR W@4Y0VU<NK82]VL-F;;A;F&R=[I>\2RS5C3_P]NS7JY/SNZNS
MWT_.OMQ?W?T"BL^3\Q*+^N_XP(#,+63,)]"8/G^T>.&.O]7H_ZEJ>O"/WHGT
MNJT3[/:88I??2?YW]3EV5//*D7I5<Z@8H(V00PX %)<0VOF@$#O3:10^>Z!N
M$]#1"S+)6ZLU)_^_!9WI_.6<!,,Q!O;/GKWXA#OAXCLR)*![ XG\0;/L5+^\
M?YD2^J,+/ON%[[#?2OGKMQ1:O5(">^-5?>\64P9 JW@@]323_:3Q#E, Y[+8
M?V*)?P7[IRJ"M%A%XCCVK[[8/_XGAGGGCJ4H71PV[-HP[#:?O]EGP3=Z4)N&
MT7H\%2@BJ&@EWB.PS:GU*0855#SP)";#$^_Y9.RY+@E^X>??J0/7O_ZU=GNU
MK_7>??X6?OH9O_F9_V.)EUMJMFI!\1 1D!$(U8&Y%=!Y1T7GF\B)[XC8O"./
M))B1;R0Y/")?+#3VDUVT<UU5K8Y-),3![]QBD9"?[-?D:U=U/RU6.CG6W0/A
M&I#$PG2W6"ZY3E.V,&V-;"H4%\4L!SEL+6-!ZFS\C*Y*3AL/WP$XW3*]IM#G
MWVKLQ><FM"\KFV;%L99]^-FD,Z'.(E#/T*YU43D#*>)%UL@9$NL1NX3Q6!US
MM8.NX/A^^$1]5C0W,IP-DM',EWQALA,/?71HB\0\%0"'6>4I8"]S'"+W?PTM
MEK2,.!5Z55 0I(=P'P0N6.094R=!\)/\!)Y JM!(\ BD-EC>""GRJ!HJ1G(>
MT,F8L$#H*[.B&5@T""(>A=G9(_ARD@M=/H\=V&OBGEKT]J%[S"#2F 8]<5QB
MT27 G$ =9!Y"K$S!;D61?#P0CC[\.9AU"0S(?(E#YACVA/O02,)#D(37 2@A
M0+ OA7*PN1<Y*.;FD<KBF_L"Q62$)"V:Y68F#-3,A(%/08C8BBT$\0#R@.4R
MV"RX2=]T$20]\0+X4<;>"'=DRMAFVL[(B[ K >:?>X&]_4/"68)H[G%8=2A
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
M<,F4T/+IUFP:LM-EC5;$[S@)P:\HA?&C7VB(!\3&, W ,XA864)#[,?,4%Z
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
M36,<PI0&9\?A4RX%;Y%%\KZL-WQES?/,<5Q9B%%VF;\:=UBQ"?D0"%<O.5:
ML5EL2Y4,(S)!TIB$(()#]$/9M+06".,,V(ZQ,QB'\0%_!E*TJ.27*R>"46=$
M' B>SH*K['*DY[VMBS\!.XE[.$".#GEI&L$$[DX=:J>LI,F;)[4R9$=W3G1\
M)P\T''$GX/<;R@NE1 !=Q'EX0+&12!*1QX%G$7>^R2(&/YM1O(PS"!^9:9*#
M_0CD9"%\@%Y4E4N??:*PE36R#K0PUYE+NTO%(L.X"'S=KNVK!I<T2RJ2+\*3
MFZDEO7L<65@TY1&N/^!F;F1E.V#G?/JH)8O-$E<1QX9MJHW9'/XV904GG:RZ
M T/P+IN8$!04MI JBNESGD2U:*'4B9\2$>/=-.DYB@6(81:(:YD4390FNQ?%
M@;KU*N- $GGS7-=<)8.676\WUZS3T&U4V6NF> '-EMWMJPI-O!:&[3:K[#CS
MRBFT[7Y#46_!])TQ*L"!Y&+%0*+#,:TL H<84EPMIW1%_YEV?4\)6&R:E&BE
MB1['O2][:M-;/)*WQ,VV1%RR\OVLN/S2TDPL_V')LUZ_$E7=RW9V)192JRR7
M.SV[V5^$Q[QR.U92Q6CMM;1K-NSC)A=E)46+UEY/JV'W.@J8BKDS3>:RYK?E
MEQ"3=H(+FC$$9K($@0:RIR^9X[#8CF[LY0[ED[?$["UIOI2PY>54?TIYTJSN
M<CV70QRY>AE *R=_GGX_M2Y#'Y/,1K-@R#,HAV(/13\V'G1,^):R3@&A)?T\
M#<='/)LT2_O%%&!:A5!\!;-DN-]-JJN&T=.T:()DS6<U%AV<-SWD=()SL^(#
M.#RB6S27.3\R\Q^F6$*9=F@>,7,>T,(KCDMX'4B?IF4YP^%LPIL093TI,@<#
MUIFV:2!K,@T#[LZ.$^ ;["M,HJQ3" ;C$!ZQ2JSJ5\<+>(T4FH3 @K0+&Y3+
M8UC$8LO;NTGBG.E0< ARW?&B?V)Z:5IPT?&O@QB$,SU<E1W4W(\,Q_KJ_Q1)
MLNE<+6FRQV$2G7V_V% 1Z_&ZA2<;QH-KHD2E)Y_&'ZP@!+-)/2#)SS;^RW/K
M8ZDP/JW^Z Q\#^14S*+W(L@]BH JG\+H![U^6(T)6EM3^C&7_?!/+ 5WLOH.
M$^>OD(?T<_6A7BR$G#U@ EM6O"+)=4(*LN:-( -!ZN'8##'";L.Y=T^M/9X"
MSR"'BU6 )/*K\7@^M)<PH(V=]6=-NU"INCBQ#)],WE/0G-07@=;RQ$Y/<K$1
M&97'>L!1H*V?!_R(JEX,;6(A^,,;>G"422QAFN;6P+]]PI!ZDXS,>!6LL9AX
MFNHLU8.@/:^F[&JC7U<,S9?.<ASI7K' 0;;<=&T\N961! 6#<8P5+=PT$TVV
MV("VP$,%L,M#-N4\Y6\;_#Y)O'P7W3&\1A/T18#2:"$K+Z&9!;3*2S"=80)4
MS,Y7Q6&YTJCOOZ(ENRERA$[R@Q4., +#BU[1\?E660A<IG4W!*3 865.V"G%
M'[<;O\''9X/:7/-*>W^\,KC-" 85(FD!7$"DRAVM?"=>?:0"9ZLY-_F<9\'B
MKDE5SWA./M!D@MP9;8G2Y5P!.ITC*(?#OGAD2E3+HT5[7EB)0.KBH!F3X5..
MTXX AR,[) ?8>^]QO@%05B0 =RA#,GB9HF*]IZUI6)\8^ -W'%B0E8I29%Q*
M;_(2C+8J ])F)6M8'>9!&$44AL@,@;/SK\#J0R:HL\\^V%;6E.@>?_<U!"[)
MOF"SK-5G6N%F20M!*C^SQ4G(:I84*\TJ<)(4D)%_CGIP1I*BED&*\E"TURER
M!_9KRS,P_P_[*^'<L+SX_<N4G#U[\0G.!B?S!W6FE>0GQ)'N^4BR6[!7;]A]
M943S2=0!9/L/8J=PF?6"9::*_OE+^N=OXM:@@HLN//WLFHH>^D&CU%W U6=*
M>SI>;D.:3;NFB)"6<RN4F"C*G:N(3<V:#:<Z"/;U$F4OTSQO3(JFU2F8:*<P
M!:DH"J-G-\)J"/'<'602]4RBGOZ)>EV3J&<2]0X\4>^+Z&R[T"UY2?WIU+%
M,T_FO 5H@'-([=Q#$Z[E;P.U;<]!;2_ANX\.-6@DWQB=\6_$?<!9G:6%U]:'
MX:IT-TQ,=+-ALQP6L%32; [J4][J_F8 ;#I^>IT"J0S'@8>EC9AQ"^O@AZ$X
M0=4D;5$J3-(U60?)B#H+"*^H,H8YBMHL6$"+Z:=HCZ47/C<LA:N!V9>TY[D+
MJZ:7>B!K JQ>I'S]<ZV SE-4VJ/>!E")!UASGI7XDTQ$R8)3'8WR6/)E9!>+
MB/%%>O$/9AUCV@S+$L6-V*/KJSH(O@D<EQ1@^#,F-Z,K7B(USD<26GN))/P9
M4\Y(YW0<88-[ZI)D*9Q23;+7TRY8 SLT]M!U0"4 C>W^>G9V*YQ%< $Z@?-
M1"WJB?,CJXO+DS/G';(.B[5F;B;BIC'HI8T>F&M5\OZSNM,HC6D]RB7=(=@P
MN,B5UYTEQJIFER4WR0%I*6XL]9G@^9YPZ<YH PJLCX@R&'W/K&V!2*)%NS#=
M-1,_/03QEFE;Q<"7]I[:<ZZA"QZ/'%PH+9'37^.2E9YZ.XN;2N0BGT(N<)IS
MP\>R!I?SLDJ":97\^&2^0[D<D4J+:M+Z\P0UT@P<E;8)1;0/"K\Q)QV*B$&!
M/O:F<[T4/,S3Q?8Z3"%G.BI5*$4$2.Y*'TY 0\;;A:G,]CQ4112O3EL$4O!.
M^=72$7-# SNL%62V\6HO/H5M1HZ;[R:4ID]>8[^!#=,GS]B$Z&4%>WD6!'AW
ML.Q)M#3 0-WTV3R ?/+[T@3L?/<&*<\R(UYS.>UPM#+OI^]C)R+G:*#B<1):
MMCH,;J@B=A:XUZ(?PBU("R7:I[.OS,?O=!,&GW$!_,\3NA!+7LE>DE#W!=BD
MA\GQ$$-I$X0&*N?W4Q"A%7*-FY6_ -'E#1EZ#S]T:-5U.]]81<( +JVBDE9
M>41M-=5Q\]TXYEQ$K,([N]M$&J0H"(Z/6>97BJ4U\X?@Y9+VW."C"=V>5LLM
MJ?[%0A([3L6BG%)BN8METC9>=MC8,"Q7\0M.P(#I#\EH@!F=I4=W*^.$N @N
M-"6Z>S$E\#G9I*W\K*WCL!V0"+SYG?C.*SQMJGU^$]KGOT%%/G-!8A.7V@-Z
M;ND6 :Z"($^NT,V&T?E_S."" J;K2)6/,YRPZL38@L]#K,_U_LO9]_,/3/5W
MU>?[YY3>,N_/OO_Y8?-<J,Y6+O"FA,%58:#Y9=7\:%TP+_Y7E@'P_CZ<@K#:
M$)O68)/^@'3Y"XXM@7YIO#(W%MHG:GRV]SE#F7%(*L(A R C4?4>'I$536,
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
MDHIA2>[R[9\3S%XL%</._32KG97Y)&A=7UY%>XFL07U#B)E7SGSY'8&.BMF
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
MS"YYD2^3B5#$B6<:]Z=!A&XL8#8.".\SD:K"P^^D1,A&!8X,X>A'.#U=">>
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
M@6@O))F4ZX.[ZF:/H=]X+_D(:P\YYAV9P+]@MMF_84,(A2?Y5"%5:J3';H3
M:S(@1891)$7Z>CSW/N\&GZ\[%_?7@]\[@YN'Z_OWDNV]V*]1)J'P<3Y9FOXX
M'5Y#YDF=TU\4^@_+;TT_.I/>,9'TCZM[)N4HK/,#+W!A2^,0Y=DO<>"<5>R@
M@J-)TZF#D81R#JV5C^_L52KF7[*=Y+>8>YV>2"&W3(L\AU,A,\=T3<,O1,NA
M#@480_\?Z!=W]+HFS03U7^1&,;P!BBN$:>"^V3.0[2!['6D,J@GF:OO#QU?I
MB?@DM.,@C*30]F&X)V @*9C%TUDLC4"O[2APS#__F3!:'.SZ!.7/?\K),Z9!
MF*3S+V8K2_CRZ14>'(3V$Y%@.=(D *4>A+B(*/!FJ&C@B_A)@(=YN*QA$(3P
MO!?XB_QGYD[1\CZ7'L8D(@L"VB'!!PRE> Q,^S3& $4R)30W7PIS)!\24.4X
MF<QBIX.%Y"GY(R2Q[29?(,#X-*J 2/COL0TL!.]ZQ(E#/.EZ]X__'5R^@T'M
M4'H9!QZ)TB<G;[D^;)B7O$/7PUY)-B&ZHL),YVL+$Y,E TF$V #BT/.C['7Z
M9=R[8!9*0Q<#(!XI/<%8"&.?SN-E[#I(&BF>A3Z V/,DF%&(TUAZ"/X)U*-C
M8M=Q&7Z56D;9RI(R#W03;1<EC.T#J:+TS/5<^@(C(&X=.T*682YMOFU#-R3L
MD<^E'[-'Q#[^$AC#QDDGBRZC5O)LL._\:$3"D RS9SNII2?9L63#;L#4*46
ML<_?$ V5F#D+2;!LZ=0QYB4-W_VR*GF I(#:IX3E4)( R2F#A 6),P.3&,F5
M/<>>3CU@!LJW% NC&7#(4 (Y-72!0SW*:+,0=NC)ADE[+@!_B,-/;3\1 8]N
M!W\$Z 0[/&6/9 X+ ;>'6%.53*[-IKN+-EW6NO"@\^1) R\*4H8HDJ, [$GP
MZ"Y)0 _'@EF\4'9,OS F-MA642H/Z5O3V60:;23DLBCL.<<'Z9/F@FXA:I#1
MX:L@UH#X+DF^EY-$N4<DXFAE68V*HI1Q]Q=%S-U:)X;244O$T#HJ"1'$')/>
MTKUE^HR (^#//_&:)-E&BIT$LADX; =V-P+K 6:7\$4*N13ZR>J0XO8$[!'W
MKP0G\'R8%Z%55U[L$/8G!FE%TCU*-T].[8))$)."E0(H<$)W2I^4?C=AENWG
MC/!(I ,B:CN@4 X"IJ,X75D-CLB:*0Z94 5P'CSYL&E@F3S#"/@<SQW-N=A)
M#T=. )#?;!_,42H"R;/MS4 :1XD0(B$]94)A F1Q82NC].07_$/4A#G0^M)@
MB,^$=Z\OOCQ<#>8R#@4"D--QO61GO_@."J-' @^GDN[9C7"/X$\4;?A9;/^$
M.3P2+WA)P(4R>Q;/\;LT%(Z13 @^QID#FEV K$O_!/"XE,_ M/43?47%%E4#
MKT!Q35'['^ ;@#P7@/84$DJ-J.&]3P[8OJ,1"#[0RA%A?W%$V,^."(MG?3^<
M,1G./'([2@_L[PGZ)<#&7_SD^! (=/&:?O@ 3[_P N?/,WHZ.5 O!XI^872N
M+Y6+CG%]U>U<6->]SF5?MRXN#>N:G@60R+&GZ/&',Y(<8[K 9L-!_/>S"_-Z
M8-TH_<ZUTC,Z1D^W.M;- )ZB]2_Z_8%Y:0WT0]<^Z^9*GW5%Z3-1^HR?VBE+
M(NQ(BJ@(,)\DF-?4\1.@;AFH17&K!:;1KN(5P (>/,##$O 0\%@/CV.I8,M#
M2F/FQ76U9NO<+HJGGF38\B916#I7:=5=5M&AU:.3.L.,G_S0>9^Y?XGW5PA;
MU"S9-$7Q.H'YG3&_86-I?C"O6Y9L-!VJ*S#?9LQO6)*FQN9B;V!>LS39Z(IJ
M<8=R5YHS$I?*I]=L*>[F)K8@H;=V@5-)0B^KK,_6]F?U.39O":>N;!B\5;#B
M!]G<3$2P&+#8AAV4.6,Q'OJ1"Q83++81BVU80*8F%MO4Q-8-V>+.PC[J<]HF
MS>ZDLH2]'%?1M/FM-R6X#IIKV[@8VRG7UF25UV$%TAWT@+=KR*K*VV$7/[CE
M9B*"@589J);6Q6_>D!ARMZL)!A(,U#X&VJSFRFX,U-W4+E9[LJYP;QBOQ6T-
MY]'KV$6\O_Y]X:]L?TU HE@B/Z?$C\A)Q)3P>TYR]NG7,KG-JM)3N>>09>YD
MT+A.D%$P?E2Y:S1<N)9!N]^X!)$ ;M]D!4!5;K%O EQ%[G<;KHTN@-LBX&[6
MLZL&X&I<QN/]5K=)?$RVUQ69AH"&1>&$?(:\,,1X%@NL0*^#&6)YG,!KC^"+
M@3\<Y.!2:&RDR#WN904OR!)H[INL\*"#66?;HMGHR8;"6Q200#._:-ZL&U1#
M:.ZJ<M_B'<WB#&TK.^Y[X'<<.QI++Z$;D\XP>/%SU1.36("D8,VOZF_"KN-9
M=K!"C*JRZXH!0P :Q,P_$3*(&) 9M"C78 &70BRLP=M-B5"!W,*XQXHP.<P%
M^98PUN6NSMN=N0 ROT#>K#]/ T#6Y+[&7^M@<1Q7A1D7C>V0=)):?ECSC_A1
M<D:7WI%*OVK"C.-:;+#B6PYV//<#X7*!:+G,@:70L,24S;ZX+A7XW12_K'O^
M@QW(;8!?0^Z:O&L[7K D\-OOL:[[#W8$MP%^%5E3>(MU%X=N>UEK7X,HDJA-
MAK6$9VXTIL6C@Q%@Y3&6?M6%B<:UB& %5AS,1/MLNWZ$B"'1K7]=0,SMZ KP
M M("J (_S8N-OB8BA02@-P4T*R3@8#;;;H!695V<O@E(;UC-J,<*"]C.BON+
MA,'0CL;[@WF.X0YW^!6UBJJRY=!X1Q!&)(Z]I!G(KX:PXYJ6$:5JCQ5M4?F-
MZ2+:8H3=4RZ(#R_B.\_V?\RA$J7OWCX"85@N8%\35Z@"UQOJ/E8@P';6W&:Z
M;VM$KUIUK="(O,!,0-MB!0<<PJP[%6B+@[OM*N1@B[T4EDX0I:WYTKYG(]MQ
M/3=^E48$)O!K5QA_34N2,N//8H5G'*:230XUEPB:@3^\I)!YO4'(P'\ ,,4
MC9XFKEP%E#>%,BMDX# A<UM#69<M2]R^"BAO"F56],!A@N9VD,JJ<2(7L:=R
M>)=5V92":>Q.LO[.::@<V'"FL.&XEA:;]::I0EID2+G- 861ZJ[*W9ZXI1(
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
M^BD%.HKHW5RLTM5RXL\@E_AS)$%, MHG"6T1F'X<H!:AI2(P7<!#!*8+>%0
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
M9IX=DR%@91H"7&@Q/N$_'[\5_VN)^.E57A-^)<PD![VK'/+@M4?P!4BDP20
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
MO\NI B\VD27K!G\7DOS"\418H,0FTA36%7UK>& 3FTCIR:K!7Q2+L(EXU D
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
M6#F2XOVG@V31?4+TKA'P:'WOFA9>=F?FC&DVF_EQMVQD>Z[]Z'IN_%K/)G/
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
MPEMY<<&YK;A03T)<;#PF9Q*"%8W>H(3X%['#AY=@*62=NT+CXGZD$M&@"='
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
MRQ:^@X$6@  =$;Z&5=+F$ L*HF#&PO-@+O3^!Z;G1H32,Q(PI7E<+^PSRYR
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
MED6A$,=6W+;!<D]O*2S+/J9D6!8%/QQ;@=H"RZV6;ACG=$-\'B[%BZM/9$P
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
M3?;2>O]C@U:8X>_&; UY$>P:<#//GQ=<.O QNM++T.9<#"N,C4;1-&)D Z2
MR9^4R$3%KEB=0<H7?>K0UK'8E@9;\XSUF[!V#9#FU XS#\,H75;-IRCG8$1!
M#T=8Y)!5D7K$"D&QMC QX:!<[X6]"XOX$YD.G M]"ORXH7WU0A0M06@RZD\
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
M8SX1"L'X,2DI$^+# I),&C1O)@H8WR6OF)^&[A;B4)<*X[09L5 ,-*X7,L@
M=<+78*J<B8M8_<*E,[9=TQWAU[&U(%UM<+) 6^A:W\UGT!J"LU>P3'1&V"[!
M^)H%;RX(P4Z3.9#?_O6C%O -1EA36B$P'QNMR[QNUM"H,$A4#CU%4 6Y^A34
M(3H7ZFM!#QVQ9]0O8VHSSX\],DPA3*:6KD61T9/VGD:RNP0F !0ZFJ#2FMES
M=$BMEM:=[>ZJ_W.?N (0V@_S&;E^M8-+CG=\#T[IK]^IR"MV&9=S2'QB"$H+
M=QPG%OJ_\]5F/F>YN-_&],/,'5TWK\N\B=7H@MX_VP\X;URWP2(7:B4;G"T0
MM6)W^0Z")/HVON7X36<_9_8T7]^";JD0]_2#!64>D@A@=9Z6H01T=1*'Q[AE
MJ"'#,A;L@/]E:869U++"UQRPR843D-W4U&$^W(75-/8)^1^2*T=A3J#.F$<N
MUB^$2HR0YIF\![WF3]@"E-?/R!G=IX;VV?/'Q X!-/NSP$?8:=!D;+R>>$*N
MSS2AA2Z"FNJ(GW%F>MGC3UUSK+,K.MM9@T4)J8@1LH%3W7A!>)\L+FU_=/3^
M,!_)MMYH[&QG--9D_<8P'S&QT;3L;&=:EK %N;NKG;>@K?>:>9%$N22CGU6J
M_#[WO4-N_A4W0I4-6M0TX/<K2Z[J$USR8LQ?["#T?+1OG7G6&HXM!;04?>]_
MQ$61G<@([$,?F Y:Y!;%VL2+?&>>%8C:V\R._KCPV<;FL\@B0,&3^1V3S7P2
M) F,/Y02T&"R\O; #S8&>JQ>"-<S)?X3[!UL,C/6 V!63#IG=NU'G5\"4U=W
M4<;B>HR@1_2B'OG5(H@$U*V4.YL?0/)QE-AGR7'32=(UL#I^T0SFROQQP!L!
MAL_VB,1>]\RS8Z4H-CVI#\+13.Y8F<+4)\Y<8(P)IA,#;FDR,!63R@O-G'J1
M&W*_C(8^#ZK&$7\*@U*Y-<5M9>I1["9?3':AP"5+8^6IX=M\C2?+$A=C?CF
M*$MS%3Q:AU"9">^F#P/V%P\XC?T&OT='MYWGNH1I&R]QD%=.TT8)_4SC*:A$
MY@\G*>^"$TUAUZ*I9@'?6^CBC"!-B\@5;#),HC%LUX*561&H-MK+Q-,(#_ 2
MKT?'^"XGPJM[S?<<AUHPSXQN;!^V:824$:QT$Q[6!]30KM'ZDVMG$T^]2Z/G
MJ%P#^' HQ)Y@JMD%) R=[-U>? D!&BQ(,=S># =EJ/T#V2+[,?5.QQ>"'.!Q
M],^2V 53RS&#P!XC5XKUR\A-66#) [R N9-'&+2!DH2->_WMYK?X:#,.WX6;
MES(S&- G$WS8,^$!@7!4BWBWW+S8,/"C2XQ>2JT,]@ID6; A5*W?$]<*2$+5
M-IB'G#-0$<IU>1Y;L(^9T%EA)L2EXV"T[\E* _[NMP0+F2NKICYL"0P&N9 ?
M!Y94*;F F6D4YO^XN/OYXZ]+P40:C282!,QG E3PK21L*// KW_\GCPQG4Z!
M7C/BO]<RH^3B]#,!_TO;L$@X+;;_?.LQ(HS_%[!"7I%7DZL#[DJ)^U%L(WI=
MAF@>]!.'R,'?DR0S^.[ZY]O+C_>WU[]>7G]^N+U_IYG.BSD/XJP5?)Q+EJ8_
MX<.W9J_O-9XX_$.3_B/**>8?76@_"9'TRZ=[X<Y1DS$]\ (7IC;QD07]$'JC
M"Q%I[9%$@K4-T2D*](]>#&1('WXR\[N8_E.<P+R)OE>EKW#(+>]%FL(I_TLP
M7=+P$MQ53Q)+FD;W4*4 1.]H$9RS9 2:5 %+.\6G3"T#B\4A9A!B:/_B,A=T
M67L*FAZJ+&@S,>O&Q_!_GQDPU-4[H@CQR5/DQ+?/7]PD8N*P 1-I"W?A-K#0
MO?_L.3 ]TT]Y!'PR,^>Q)K163]@Y.7,?MR _E;1;,$A+]:'>$7@!C[BKPU6[
MFIQU]B)ATV[NW&MZ'S_SIMTT=!I#+U"11!8>->Y31F*CX!Y_Y>X/#&?&Y]!H
MCO0>OM@.!HLLMA@F-([P$H9;_TBL*>5]>6*4FJDS@ZKH>SF 95#0RN*B8[!.
MO1?DE2S^G(<M,B,D71L%49YDQ"PL,9V=!(AK$K+;+!Y9B;9.E 1AICEOVD^T
M/\4R4IT"NXZ8R4(=3>^J/;V]$PV^CR;$BASR;9RWAE()!H$XPZ ES# HD&+
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
M282YYRHPMI0B;L#J%=GNR"=F0+2W1OEI,$H-/J$&AR<A9629AP*? I\"7TW
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
MJ.F+*\!J#3S]Y0^FW)MT1LP'1^?*QD$+B56JF'*C9VK^!?CA.4@FF*/3V"!
MFX3CDLHLPK'('F?3JC8-#4,)Z-O/'I WJWA!2PHX(UXZ(['4T?!S36=.ES].
MTC'3OUR5!,4$)K7)V*:;S*E.8P/H\(X]ION?\0L@,_1Y.AO-ZN'/YX>Y./+
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
M'&^Y%(DR5EI9"()KP![VD%)W.R:LOOQLU..VN[XF$(7!,3+\(2#?DT6XPKB
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
MKEH5%BC*;H\-#^-_/&7+\#\?3\?AQ/GT/_\/4$L! A0#%     @ :8=94+;
MB+ +N@$ N.(!  \              ( !     &-O;7!G<F%P:# R+FIP9U!+
M 0(4 Q0    ( &F'65"JGCADZA$  !M=   -              "  3BZ 0!E
M>%\Q-S(X.3@N:'1M4$L! A0#%     @ :8=94++)&X,/!@  X%0   T
M         ( !3<P! &5X7S$W,C@Y.2YH=&U02P$"% ,4    " !IAUE0Q?8#
MB;X"  #,"   #0              @ &'T@$ 97A?,3<R.3 P+FAT;5!+ 0(4
M Q0    ( &F'65"%_'Z'&P@  *4\   -              "  7#5 0!E>%\Q
M-S(Y,#$N:'1M4$L! A0#%     @ :8=94%/A)24E"   M3P   T
M     ( !MMT! &5X7S$W,CDP,BYH=&U02P$"% ,4    " !IAUE0D;0<:* $
M   G&@  #0              @ $&Y@$ 97A?,3<R.3 S+FAT;5!+ 0(4 Q0
M   ( &F'65!%LW JG@0   4:   -              "  ='J 0!E>%\Q-S(Y
M,#0N:'1M4$L! A0#%     @ :8=94(*N_&,\"@  <#$   T
M ( !FN\! &5X7S$W,S(Q-"YH=&U02P$"% ,4    " !IAUE0OXX"2DTA  #>
ML $ $0              @ $!^@$ 9VYR8RTR,#$Y,3(S,2YX<V102P$"% ,4
M    " !IAUE04NNK.F<6  #R: $ %0              @ %]&P( 9VYR8RTR
M,#$Y,3(S,5]C86PN>&UL4$L! A0#%     @ :8=94)).L<$3?P  ZCT+ !4
M             ( !%S(" &=N<F,M,C Q.3$R,S%?9&5F+GAM;%!+ 0(4 Q0
M   ( &F'65"[-^G/EK4  ,8'"@ 5              "  5VQ @!G;G)C+3(P
M,3DQ,C,Q7VQA8BYX;6Q02P$"% ,4    " !IAUE0SM>_V-2'  !R1 P %0
M            @ $F9P, 9VYR8RTR,#$Y,3(S,5]P<F4N>&UL4$L! A0#%
M  @ :8=94.3[MY]F,@, .;XQ !0              ( !+>\# &=N<F,R,#$Y
B,3(S,5\Q,&LN:'1M4$L%!@     /  \ H@,  ,4A!P    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6839954736">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Operating activities</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 252,308<span></span>
</td>
<td class="nump">$ 241,220<span></span>
</td>
<td class="nump">$ 159,557<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">32,265<span></span>
</td>
<td class="nump">25,296<span></span>
</td>
<td class="nump">23,127<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">28,644<span></span>
</td>
<td class="nump">22,112<span></span>
</td>
<td class="nump">28,861<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCostsAndDiscounts', window );">Amortization of original issue discount and deferred financing costs</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">4,712<span></span>
</td>
<td class="nump">4,749<span></span>
</td>
<td class="nump">3,516<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">926<span></span>
</td>
<td class="nump">1,332<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Loss on pension settlement</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="nump">10,920<span></span>
</td>
<td class="nump">(0)<span></span>
</td>
<td class="nump">(0)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">18,733<span></span>
</td>
<td class="nump">23,600<span></span>
</td>
<td class="nump">19,502<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation expense</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[3]</sup></td>
<td class="nump">16,694<span></span>
</td>
<td class="nump">14,563<span></span>
</td>
<td class="nump">10,205<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Other</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,086<span></span>
</td>
<td class="nump">2,474<span></span>
</td>
<td class="nump">410<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Net changes in operating assets and liabilities, net of acquisitions:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">8,231<span></span>
</td>
<td class="num">(43,243)<span></span>
</td>
<td class="num">(32,857)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">26,369<span></span>
</td>
<td class="num">(152,594)<span></span>
</td>
<td class="num">(22,986)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(358)<span></span>
</td>
<td class="num">(6,362)<span></span>
</td>
<td class="num">(14,783)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(69,404)<span></span>
</td>
<td class="nump">86,359<span></span>
</td>
<td class="nump">42,788<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Accrued wages and employee benefits</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(3,724)<span></span>
</td>
<td class="nump">12,626<span></span>
</td>
<td class="nump">6,105<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities', window );">Other accrued liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(16,252)<span></span>
</td>
<td class="nump">16,972<span></span>
</td>
<td class="nump">37,029<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities', window );">Excess tax benefits from equity awards</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,263)<span></span>
</td>
<td class="num">(1,877)<span></span>
</td>
<td class="num">(3,152)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">308,887<span></span>
</td>
<td class="nump">247,227<span></span>
</td>
<td class="nump">257,322<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Investing activities</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of property and equipment</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">95<span></span>
</td>
<td class="nump">214<span></span>
</td>
<td class="nump">82<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables', window );">Proceeds from beneficial interest in securitization transactions</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,630<span></span>
</td>
<td class="nump">3,933<span></span>
</td>
<td class="nump">3,794<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for property and equipment</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(60,802)<span></span>
</td>
<td class="num">(47,601)<span></span>
</td>
<td class="num">(33,261)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisition of business, net of cash acquired</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(112,001)<span></span>
</td>
<td class="num">(65,440)<span></span>
</td>
<td class="nump">1,257<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(170,078)<span></span>
</td>
<td class="num">(108,894)<span></span>
</td>
<td class="num">(28,128)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Financing activities</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromShortTermDebt', window );">Proceeds from short-term borrowings</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">73,340<span></span>
</td>
<td class="nump">53,965<span></span>
</td>
<td class="nump">101,991<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Proceeds from long-term borrowings</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,660<span></span>
</td>
<td class="nump">51,425<span></span>
</td>
<td class="nump">3,069<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfShortTermDebt', window );">Repayments of short-term borrowings</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(59,518)<span></span>
</td>
<td class="num">(27,880)<span></span>
</td>
<td class="num">(114,874)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities', window );">Repayments of long-term borrowings and finance lease obligations</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(53,049)<span></span>
</td>
<td class="num">(101,827)<span></span>
</td>
<td class="num">(117,475)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Stock repurchases</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="num">(25,656)<span></span>
</td>
<td class="num">(30,012)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payment of contingent acquisition consideration</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(5,550)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfDebtIssuanceCosts', window );">Payment of debt issuance costs</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,473)<span></span>
</td>
<td class="num">(1,702)<span></span>
</td>
<td class="num">(3,901)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsCommonStock', window );">Cash dividends paid to noncontrolling interest of subsidiary</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(285)<span></span>
</td>
<td class="num">(314)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Taxes paid related to equity awards</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(6,438)<span></span>
</td>
<td class="num">(5,659)<span></span>
</td>
<td class="num">(5,892)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from the exercise of stock options</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">9,395<span></span>
</td>
<td class="nump">5,614<span></span>
</td>
<td class="nump">6,951<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(41,918)<span></span>
</td>
<td class="num">(52,034)<span></span>
</td>
<td class="num">(160,143)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents', window );">Effect of exchange rate changes on cash and cash equivalents</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,510<span></span>
</td>
<td class="num">(289)<span></span>
</td>
<td class="nump">2,149<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease', window );">Net increase in cash and cash equivalents</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">98,401<span></span>
</td>
<td class="nump">86,010<span></span>
</td>
<td class="nump">71,200<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">224,482<span></span>
</td>
<td class="nump">138,472<span></span>
</td>
<td class="nump">67,272<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">322,883<span></span>
</td>
<td class="nump">224,482<span></span>
</td>
<td class="nump">138,472<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosure of cash flow information</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">35,465<span></span>
</td>
<td class="nump">41,007<span></span>
</td>
<td class="nump">41,105<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 61,767<span></span>
</td>
<td class="nump">$ 41,044<span></span>
</td>
<td class="nump">$ 23,836<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Represents pre-tax settlement charges related to the termination of the Company&#8217;s domestic pension plan in the fourth quarter of 2019.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top">Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfFinancingCostsAndDiscounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCostsAndDiscounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash and cash equivalents. Cash and cash equivalents are the 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. Includes effect from exchange rate changes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of (increase) decrease to benefit obligation of defined benefit plan from irrevocable action relieving primary responsibility for benefit obligation and eliminating risk for obligation and assets used to effect settlement. Includes, but is not limited to, lump-sum cash payment to participant in exchange for right to receive specified benefits, purchase of nonparticipating annuity contract and change from remeasurement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(10)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanSettlementsBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11374-113907<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in other expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4297-108586<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3367-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNoncashIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNoncashIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDebtIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDebtIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from collection on beneficial interest in securitization of receivables.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromShortTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a borrowing having initial term of repayment within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromShortTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=SL79508275-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591551-111686<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3000-108585<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4591552-111686<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for debt, mandatory redeemable security, and principal payment for finance lease obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a),(b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfShortTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing having initial term of repayment within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfShortTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853365152">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 3 - Acquisitions - Preliminary Price Allocation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Jun. 01, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 805,284<span></span>
</td>
<td class="nump">$ 764,655<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 721,523<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=gnrc_SelmecMember', window );">Selmec [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets', window );">Prepaid expense and other assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,323<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,572<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">46,196<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets', window );">Deferred income taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">597<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill', window );">Total assets acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">115,873<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,216<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits', window );">Accrued wages and employee benefits</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">397<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther', window );">Other accrued liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,671<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,974<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,643<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Net assets acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 79,972<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the total assets acquired from a business combination which includes identifiable assets acquired and liabilities assumed assets, including goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accrued wages and employee benefits due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31917-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of intangible assets, excluding goodwill, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of inventory recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of property, plant, and equipment recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=gnrc_SelmecMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=gnrc_SelmecMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853538048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Derivative Instruments and Hedging Activities (Details Textual)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk', window );">Derivative Assets (Liabilities), Net Fair Value of Derivative Contracts, Excluding Impact of Credit Risk</a></td>
<td class="num">$ (10,588)<span></span>
</td>
<td class="nump">$ 8,220<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember', window );">Commodity Contract [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeNumberOfInstrumentsHeld', window );">Derivative, Number of Instruments Held, Total</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember', window );">Commodity Contract [Member] | Not Designated as Hedging Instrument [Member] | Cost of Sales [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeGainLossOnDerivativeNet', window );">Derivative, Gain (Loss) on Derivative, Net, Total</a></td>
<td class="num">$ (174)<span></span>
</td>
<td class="num">$ (874)<span></span>
</td>
<td class="nump">$ 377<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember', window );">Commodity Contract [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeRemainingMaturity1', window );">Derivative, Remaining Maturity</a></td>
<td class="text">18 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember', window );">Foreign Exchange Contract [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeNumberOfInstrumentsHeld', window );">Derivative, Number of Instruments Held, Total</a></td>
<td class="nump">43<span></span>
</td>
<td class="nump">40<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember', window );">Foreign Exchange Contract [Member] | Not Designated as Hedging Instrument [Member] | Other, Net [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeGainLossOnDerivativeNet', window );">Derivative, Gain (Loss) on Derivative, Net, Total</a></td>
<td class="num">$ (1,195)<span></span>
</td>
<td class="num">$ (653)<span></span>
</td>
<td class="nump">$ 697<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember', window );">Foreign Exchange Contract [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeRemainingMaturity1', window );">Derivative, Remaining Maturity</a></td>
<td class="text">12 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_NumberOfNewContractsEntered', window );">Number of New Contracts Entered</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax', window );">Other Comprehensive Income (Loss), Unrealized Gain (Loss) on Derivatives Arising During Period, before Tax</a></td>
<td class="num">$ (13,855)<span></span>
</td>
<td class="nump">$ 2,924<span></span>
</td>
<td class="nump">$ 3,712<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the fair value of derivative contracts excluding impact of credit risk.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_NumberOfNewContractsEntered">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of new contracts entered into during the period mentioned.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_NumberOfNewContractsEntered</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeGainLossOnDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5618551-113959<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeGainLossOnDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeNumberOfInstrumentsHeld">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of derivative instruments of a particular group held by the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5579245-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5580258-113959<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeNumberOfInstrumentsHeld</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeRemainingMaturity1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period remaining until the derivative contract matures, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeRemainingMaturity1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109978405&amp;loc=d3e80720-113993<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=gnrc_OtherNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=gnrc_OtherNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838167344">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parentheticals) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, allowance for doubtful accounts</a></td>
<td class="nump">$ 6,968<span></span>
</td>
<td class="nump">$ 4,873<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">500,000,000<span></span>
</td>
<td class="nump">500,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">71,667,726<span></span>
</td>
<td class="nump">71,186,418<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockShares', window );">Treasury stock, shares (in shares)</a></td>
<td class="nump">9,103,013<span></span>
</td>
<td class="nump">9,047,060<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118955202&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854569264">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="5">12 Months Ended</th>
</tr>
<tr>
<th class="th" colspan="2"><div>Dec. 31, 2019</div></th>
<th class="th" colspan="2"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Loss on pension settlement</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 10,920<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ (0)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ (0)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Total before tax</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">319,607<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">311,076<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">203,699<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax impact</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">67,299<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">69,856<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 44,142<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember', window );">Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax', window );">Amortization of net loss</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(802)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(9,067)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="num">$ (593)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[3]</sup></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember', window );">Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member] | Reclassification out of Accumulated Other Comprehensive Income [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Loss on pension settlement</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">10,920<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax', window );">Amortization of net loss</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">843<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Total before tax</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">11,763<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax impact</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,696)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Amounts reclassified from AOCL</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 9,067<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="6"></td></tr>
<tr><td colspan="6"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents pre-tax settlement charges related to the termination of the Company&#8217;s domestic pension plan in the fourth quarter of 2019.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">Details of reclassifications from AOCL during 2019 are as follows:




Amounts reclassified from AOCL


Loss on pension settlement

 	$	10,920
Amortization of net loss

 	 	843
Total before tax

 	 	11,763
Income tax impact

 	 	(2,696	)
Amounts reclassified from AOCL

 	$	9,067</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top">Represents actuarial losses of $802, net of tax effect of $(209), amortized to net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of (increase) decrease to benefit obligation of defined benefit plan from irrevocable action relieving primary responsibility for benefit obligation and eliminating risk for obligation and assets used to effect settlement. Includes, but is not limited to, lump-sum cash payment to participant in exchange for right to receive specified benefits, purchase of nonparticipating annuity contract and change from remeasurement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(10)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanSettlementsBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17B<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL34724394-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17B<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL34724394-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=118951672&amp;loc=d3e1436-108581<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis=us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis=us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836806240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 41,785<span></span>
</td>
<td class="nump">$ 35,422<span></span>
</td>
<td class="nump">$ 31,695<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition', window );">Product warranty reserve assumed in acquisition</a></td>
<td class="nump">1,062<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">43<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">Payments</a></td>
<td class="num">(26,096)<span></span>
</td>
<td class="num">(20,029)<span></span>
</td>
<td class="num">(18,861)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued', window );">Provision for warranty issued</a></td>
<td class="nump">32,060<span></span>
</td>
<td class="nump">26,910<span></span>
</td>
<td class="nump">21,347<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Changes in estimates for pre-existing warranties</a></td>
<td class="nump">505<span></span>
</td>
<td class="num">(518)<span></span>
</td>
<td class="nump">1,198<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Balance at end of period</a></td>
<td class="nump">49,316<span></span>
</td>
<td class="nump">41,785<span></span>
</td>
<td class="nump">35,422<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">68,340<span></span>
</td>
<td class="nump">57,854<span></span>
</td>
<td class="nump">36,139<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued', window );">Deferred revenue contracts issued</a></td>
<td class="nump">24,483<span></span>
</td>
<td class="nump">21,440<span></span>
</td>
<td class="nump">29,262<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts', window );">Amortization of deferred revenue contracts</a></td>
<td class="num">(14,085)<span></span>
</td>
<td class="num">(10,954)<span></span>
</td>
<td class="num">(7,547)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyAccrual', window );">Balance at end of period</a></td>
<td class="nump">$ 78,738<span></span>
</td>
<td class="nump">$ 68,340<span></span>
</td>
<td class="nump">$ 57,854<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate decrease in the liability for accruals related to extended product warranties issued during the reporting period, due to amortization of deferred revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExtendedProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate extended product warranty liability. Does not include the ending balance for the standard product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1),(c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtendedProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the extended product warranty accrual from warranties issued. Excludes standard product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1),(c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard product warranty accrual from a business acquisition. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>90
<FILENAME>R87.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855775008">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Generac Holdings Inc.</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 69,614<span></span>
</td>
<td class="nump">$ 75,574<span></span>
</td>
<td class="nump">$ 61,958<span></span>
</td>
<td class="nump">$ 44,861<span></span>
</td>
<td class="nump">$ 75,575<span></span>
</td>
<td class="nump">$ 75,776<span></span>
</td>
<td class="nump">$ 53,261<span></span>
</td>
<td class="nump">$ 33,645<span></span>
</td>
<td class="nump">$ 252,007<span></span>
</td>
<td class="nump">$ 238,257<span></span>
</td>
<td class="nump">$ 157,808<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestChangeInRedemptionValue', window );">Redeemable noncontrolling interest redemption value adjustment</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,253<span></span>
</td>
<td class="num">(17,970)<span></span>
</td>
<td class="nump">909<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_NetIncomeLossAvailableToCommonStockholders', window );">Net income attributable to common shareholders</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 253,260<span></span>
</td>
<td class="nump">$ 220,287<span></span>
</td>
<td class="nump">$ 158,717<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares, basic (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">61,926,986<span></span>
</td>
<td class="nump">61,662,031<span></span>
</td>
<td class="nump">62,040,704<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive effect of stock compensation awards (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">938,460<span></span>
</td>
<td class="nump">571,194<span></span>
</td>
<td class="nump">602,168<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted shares (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">62,865,446<span></span>
</td>
<td class="nump">62,233,225<span></span>
</td>
<td class="nump">62,642,872<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 1.14<span></span>
</td>
<td class="nump">$ 1.20<span></span>
</td>
<td class="nump">$ 0.99<span></span>
</td>
<td class="nump">$ 0.77<span></span>
</td>
<td class="nump">$ 1.21<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 0.83<span></span>
</td>
<td class="nump">$ 0.42<span></span>
</td>
<td class="nump">$ 4.09<span></span>
</td>
<td class="nump">$ 3.57<span></span>
</td>
<td class="nump">$ 2.56<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 1.18<span></span>
</td>
<td class="nump">$ 0.98<span></span>
</td>
<td class="nump">$ 0.76<span></span>
</td>
<td class="nump">$ 1.20<span></span>
</td>
<td class="nump">$ 1.11<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
<td class="nump">$ 0.42<span></span>
</td>
<td class="nump">$ 4.03<span></span>
</td>
<td class="nump">$ 3.54<span></span>
</td>
<td class="nump">$ 2.53<span></span>
</td>
</tr>
<tr><td colspan="12"></td></tr>
<tr><td colspan="12"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Excludes approximately 38,900 and 48,200 stock options for the three and nine months ended September 30, 2018, respectively, as the impact of such awards was anti-dilutive. There were no awards with an anti-dilutive impact for the three and nine months ended September 30, 2019.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_NetIncomeLossAvailableToCommonStockholders">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Net income after adjustments for redeemable noncontrolling interest redemption value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_NetIncomeLossAvailableToCommonStockholders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1500-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestChangeInRedemptionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Change in noncontrolling interest during the period as a result of a change in the redemption value of redeemable noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 16(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestChangeInRedemptionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1448-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>91
<FILENAME>R83.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6844071200">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 12 - Credit Agreements - Long-term Borrowings (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Term loan</a></td>
<td class="nump">$ 830,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 879,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Original issue discount and deferred financing costs</a></td>
<td class="num">(18,048)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(22,440)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">ABL facility</a></td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Total finance lease liabilities</a></td>
<td class="nump">25,962<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">20,171<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherBorrowings', window );">Other</a></td>
<td class="nump">2,236<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">1,642<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtAndCapitalLeaseObligations', window );">Total</a></td>
<td class="nump">840,150<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">878,373<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Less: current portion of debt</a></td>
<td class="nump">553<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">1,075<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Finance lease liabilities - current (5)</a></td>
<td class="nump">1,830<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">902<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Total</a></td>
<td class="nump">$ 837,767<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 876,396<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Recorded in the current portion of long-term borrowings and finance lease obligations line</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term and long-term debt and lease obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.13,16)<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.16)<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherBorrowings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying amount as of the balance sheet date for the aggregate of other miscellaneous borrowings owed by the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.13,16)<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherBorrowings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>92
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858830192">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Leases (Year)</a></td>
<td class="text">6 years 10 months 24 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1', window );">Finance Leases (Year)</a></td>
<td class="text">13 years 10 months 13 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Leases</a></td>
<td class="nump">4.59%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent', window );">Finance Leases</a></td>
<td class="nump">7.83%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for finance lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<FILENAME>gnrc20191231_10k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2017-01-31"
  xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31"
  xmlns:gnrc="http://www.generac.com/20191231"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2019-01-31"
  xmlns:thunderdome="http://www.RDGFilings.com"
  xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="gnrc-20191231.xsd" xlink:type="simple"/>
    <context id="d_2019-01-01_2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-06-28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2019-06-28</instant>
        </period>
    </context>
    <context id="i_2020-02-19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2020-02-19</instant>
        </period>
    </context>
    <context id="i_2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:ExcessPurchasePriceOverPredecessorBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-04-26_2019-04-26_BusinessAcquisitionAxis-PikaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PikaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-26</startDate>
            <endDate>2019-04-26</endDate>
        </period>
    </context>
    <context id="i_2019-04-26_BusinessAcquisitionAxis-PikaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PikaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-26</instant>
        </period>
    </context>
    <context id="d_2019-03-12_2019-03-12_BusinessAcquisitionAxis-NeurioMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:NeurioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-03-12</startDate>
            <endDate>2019-03-12</endDate>
        </period>
    </context>
    <context id="d_2019-07-01_2019-09-30_BusinessAcquisitionAxis-NeurioMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:NeurioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="i_2019-03-12_BusinessAcquisitionAxis-NeurioMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:NeurioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-12</instant>
        </period>
    </context>
    <context id="d_2018-06-01_2018-06-01_BusinessAcquisitionAxis-SelmecMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:SelmecMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-06-01</startDate>
            <endDate>2018-06-01</endDate>
        </period>
    </context>
    <context id="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:SelmecMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-06-01</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:SelmecMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ProFormaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ProFormaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ProFormaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2016-03-01_BusinessAcquisitionAxis-PramacMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PramacMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-03-01</instant>
        </period>
    </context>
    <context id="i_2016-03-01_OwnershipAxis-PramacMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">gnrc:PramacMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-03-01</instant>
        </period>
    </context>
    <context id="d_2019-02-01_2019-02-28_BusinessAcquisitionAxis-PramacMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:PramacMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-02-01</startDate>
            <endDate>2019-02-28</endDate>
        </period>
    </context>
    <context id="i_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:CaptivaEnergySolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-02-01</instant>
        </period>
    </context>
    <context id="i_2019-02-01_OwnershipAxis-CaptivaEnergySolutionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">gnrc:CaptivaEnergySolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-02-01</instant>
        </period>
    </context>
    <context id="d_2019-02-01_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gnrc:CaptivaEnergySolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-02-01</startDate>
            <endDate>2019-02-01</endDate>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2016-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">gnrc:RedeemableNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gnrc:OtherNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gnrc:OtherNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gnrc:OtherNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CommodityContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis">us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:ResidentialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:CommercialAndIndustrialPowerProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gnrc:OtherProductsAndServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">gnrc:AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:DomesticMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gnrc:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:NetAssetsGeographicAreaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:NetAssetsGeographicAreaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandAndLandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandAndLandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gnrc:DiesAndToolsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201602Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-01</instant>
        </period>
    </context>
    <context id="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OperatingLeaseAndOtherAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OtherAccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherLongtermLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OperatingLeaseAndOtherLongtermLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gnrc:OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-10-01_2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2020-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2021-01-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-01-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2022-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2023-01-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2024-01-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2024-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:OtherLinesOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">gnrc:OtherLinesOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2013-05-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2013-05-31</instant>
        </period>
    </context>
    <context id="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2013-05-31</startDate>
            <endDate>2013-05-31</endDate>
        </period>
    </context>
    <context id="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2013-05-31</startDate>
            <endDate>2013-05-31</endDate>
        </period>
    </context>
    <context id="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:LIBORFloorRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2013-05-31</startDate>
            <endDate>2013-05-31</endDate>
        </period>
    </context>
    <context id="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">gnrc:NetDebtLeverageRatioThresholdMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2014-04-01</startDate>
            <endDate>2014-06-30</endDate>
        </period>
    </context>
    <context id="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">gnrc:NetDebtLeverageRatioThresholdMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2014-04-01</startDate>
            <endDate>2014-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-05-01</startDate>
            <endDate>2017-05-31</endDate>
        </period>
    </context>
    <context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-05-01</startDate>
            <endDate>2017-05-31</endDate>
        </period>
    </context>
    <context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-05-01</startDate>
            <endDate>2017-05-31</endDate>
        </period>
    </context>
    <context id="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:LIBORFloorRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-05-01</startDate>
            <endDate>2017-05-31</endDate>
        </period>
    </context>
    <context id="i_2017-06-30_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-06-30</instant>
        </period>
    </context>
    <context id="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2017-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-06-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-06-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="i_2018-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:LIBORFloorRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-10-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-01</startDate>
            <endDate>2015-05-31</endDate>
        </period>
    </context>
    <context id="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-05-01</startDate>
            <endDate>2015-05-31</endDate>
        </period>
    </context>
    <context id="i_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-06-30</instant>
        </period>
    </context>
    <context id="i_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-06-30</instant>
        </period>
    </context>
    <context id="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-06-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:ABLRevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">gnrc:AdjustedLIBORRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-06-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-04-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-04-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-06-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-06-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-04-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">gnrc:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-04-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-10-01_2018-10-31_CreditFacilityAxis-AmendedABLFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-10-01</startDate>
            <endDate>2018-10-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_CreditFacilityAxis-AmendedABLFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gnrc:AmendedABLFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2015-08-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2015-08-31</instant>
        </period>
    </context>
    <context id="i_2016-10-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2016-10-31</instant>
        </period>
    </context>
    <context id="i_2018-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2018-09-30</instant>
        </period>
    </context>
    <context id="d_2018-09-01_2018-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2018-09-01</startDate>
            <endDate>2018-09-30</endDate>
        </period>
    </context>
    <context id="d_2015-08-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-08-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2015-08-01_2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2015-08-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-10-01_2017-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2017-10-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:SavingsPlan401kMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:SavingsPlan401kMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:SavingsPlan401kMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-10-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:FixedIncomeFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:FixedIncomeFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:FixedIncomeFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:DomesticEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:DomesticEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:DomesticEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:InternationalEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:InternationalEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:InternationalEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:RealEstateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:RealEstateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:RealEstateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:OtherInvestmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:EquityAndRealEstateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DefinedBenefitPlanByPlanAssetCategoriesAxis">gnrc:EquityAndRealEstateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2010-02-10">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <instant>2010-02-10</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PlanNameAxis-EquityIncentivePlanPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:EquityIncentivePlanPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_PlanNameAxis-EquityIncentivePlanPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:EquityIncentivePlanPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_PlanNameAxis-EquityIncentivePlanPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:EquityIncentivePlanPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-06-13_PlanNameAxis-The2019EquityIncentivePlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:The2019EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-06-13</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_PlanNameAxis-The2019EquityIncentivePlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">gnrc:The2019EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2016-01-01_2016-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2016-01-01</startDate>
            <endDate>2016-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_AwardTypeAxis-PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gnrc:RestrictedStockAndPerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gnrc:RestrictedStockAndPerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gnrc:RestrictedStockAndPerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:BoardOfDirectorsChairmanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:BoardOfDirectorsChairmanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:BoardOfDirectorsChairmanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="d_2019-04-01_2019-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-06-30</endDate>
        </period>
    </context>
    <context id="d_2019-07-01_2019-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="d_2018-01-01_2018-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-03-31</endDate>
        </period>
    </context>
    <context id="d_2018-04-01_2018-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2018-04-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="d_2018-07-01_2018-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2018-07-01</startDate>
            <endDate>2018-09-30</endDate>
        </period>
    </context>
    <context id="d_2018-10-01_2018-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
        </entity>
        <period>
            <startDate>2018-10-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-NetPeriodicBenefitCostsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001474735</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">gnrc:NetPeriodicBenefitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Share">
        <measure>shares</measure>
    </unit>
    <unit id="NonApplicable">
        <measure>thunderdome:item</measure>
    </unit>
    <unit id="USDPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="Year">
        <measure>utr:Y</measure>
    </unit>
    <unit id="Month">
        <measure>utr:M</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="d_2019-01-01_2019-12-31"
      id="thunderdome-EntityCentralIndexKey">0001474735</dei:EntityCentralIndexKey>
    <dei:EntityRegistrantName
      contextRef="d_2019-01-01_2019-12-31"
      id="thunderdome-EntityRegistrantName">GENERAC HOLDINGS INC.</dei:EntityRegistrantName>
    <dei:AmendmentFlag contextRef="d_2019-01-01_2019-12-31">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="d_2019-01-01_2019-12-31">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus contextRef="d_2019-01-01_2019-12-31">FY</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentFiscalYearFocus contextRef="d_2019-01-01_2019-12-31">2019</dei:DocumentFiscalYearFocus>
    <gnrc:NumberOfMajorCustomers
      contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="-3"
      id="c56031455"
      unitRef="Pure">0</gnrc:NumberOfMajorCustomers>
    <gnrc:NumberOfMajorCustomers
      contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="-3"
      id="c56031458"
      unitRef="Pure">0</gnrc:NumberOfMajorCustomers>
    <gnrc:NumberOfMajorCustomers
      contextRef="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="-3"
      id="c56031461"
      unitRef="Pure">0</gnrc:NumberOfMajorCustomers>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031519"
      unitRef="USD">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031520"
      unitRef="USD">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031521"
      unitRef="USD">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <gnrc:DeferredCostsAmortizationExpenseNextTwelveMonths
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031536"
      unitRef="USD">2598000</gnrc:DeferredCostsAmortizationExpenseNextTwelveMonths>
    <gnrc:DeferredCostsAmortizationExpenseYearTwo
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56031539"
      unitRef="USD">2640000</gnrc:DeferredCostsAmortizationExpenseYearTwo>
    <gnrc:DeferredCostsAmortizationExpenseYearThree
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031541"
      unitRef="USD">2689000</gnrc:DeferredCostsAmortizationExpenseYearThree>
    <gnrc:DeferredCostsAmortizationExpenseYearFour
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031544"
      unitRef="USD">2579000</gnrc:DeferredCostsAmortizationExpenseYearFour>
    <gnrc:NoncontrollingInterestAgreementExtensionOfTerm
      contextRef="d_2019-02-01_2019-02-28_BusinessAcquisitionAxis-PramacMember"
      id="c56031712">P5Y</gnrc:NoncontrollingInterestAgreementExtensionOfTerm>
    <gnrc:BusinessAcquisitionNoncontrollingInterestTermOfPutOption
      contextRef="d_2019-02-01_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember"
      id="c56031719">P5Y</gnrc:BusinessAcquisitionNoncontrollingInterestTermOfPutOption>
    <gnrc:BusinessAcquisitionTermOfCallOption
      contextRef="d_2019-02-01_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember"
      id="c56031720">P5Y</gnrc:BusinessAcquisitionTermOfCallOption>
    <us-gaap:DerivativeRemainingMaturity1
      contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_RangeAxis-MaximumMember"
      id="c56031756">P18M</us-gaap:DerivativeRemainingMaturity1>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember"
      decimals="-3"
      id="c56031758"
      unitRef="Pure">0</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember"
      decimals="-3"
      id="c56031786"
      unitRef="Pure">0</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:DerivativeRemainingMaturity1
      contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_RangeAxis-MaximumMember"
      id="c56031765">P12M</us-gaap:DerivativeRemainingMaturity1>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember"
      decimals="INF"
      id="c56031767"
      unitRef="Pure">43</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember"
      decimals="INF"
      id="c56031768"
      unitRef="Pure">40</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <gnrc:NumberOfNewContractsEntered
      contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"
      decimals="INF"
      id="c56031777"
      unitRef="Pure">20</gnrc:NumberOfNewContractsEntered>
    <us-gaap:NumberOfReportableSegments
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56031884"
      unitRef="Pure">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"
      decimals="1"
      id="c56031915"
      unitRef="Pure">0.80</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032088"
      unitRef="USD">31237000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032090"
      unitRef="USD">29473000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032092"
      unitRef="USD">22226000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032094"
      unitRef="USD">18344000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01"
      id="c56032330">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2021-01-01"
      id="c56032331">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-01-01"
      id="c56032332">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2023-01-01"
      id="c56032333">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2024-01-01"
      id="c56032334">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <gnrc:ExtendedWarrantyTerm
      contextRef="d_2019-01-01_2019-12-31_RangeAxis-MinimumMember"
      id="c56032335">P5Y</gnrc:ExtendedWarrantyTerm>
    <gnrc:ExtendedWarrantyTerm
      contextRef="d_2019-01-01_2019-12-31_RangeAxis-MaximumMember"
      id="c56032336">P10Y</gnrc:ExtendedWarrantyTerm>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56032532"
      unitRef="Share">0</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="d_2019-01-01_2019-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032550"
      unitRef="Share">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c56032900">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c56032901">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember"
      id="c56032935">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-PerformanceSharesMember"
      id="c56032938">P3Y</gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030639"
      unitRef="USD">6968000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030640"
      unitRef="USD">4873000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56030692"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56030693"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56030694"
      unitRef="Share">500000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56030695"
      unitRef="Share">500000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56030696"
      unitRef="Share">71667726</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56030697"
      unitRef="Share">71186418</us-gaap:CommonStockSharesIssued>
    <us-gaap:TreasuryStockShares
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56030702"
      unitRef="Share">9103013</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56030703"
      unitRef="Share">9047060</us-gaap:TreasuryStockShares>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030864"
      unitRef="USD">2384000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030944"
      unitRef="USD">-21000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031010"
      unitRef="USD">1027000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031109"
      unitRef="USD">-154000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031184"
      unitRef="USD">4877000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax>
    <dei:DocumentType contextRef="d_2019-01-01_2019-12-31">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="d_2019-01-01_2019-12-31">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="d_2019-01-01_2019-12-31">2019-12-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="d_2019-01-01_2019-12-31">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="d_2019-01-01_2019-12-31">001-34627</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode contextRef="d_2019-01-01_2019-12-31">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="d_2019-01-01_2019-12-31">20-5654756</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="d_2019-01-01_2019-12-31">S45 W29290 Hwy 59</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="d_2019-01-01_2019-12-31">Waukesha</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="d_2019-01-01_2019-12-31">WI</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="d_2019-01-01_2019-12-31">53189</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="d_2019-01-01_2019-12-31">262</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="d_2019-01-01_2019-12-31">544-4811</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="d_2019-01-01_2019-12-31">Common Stock, $0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="d_2019-01-01_2019-12-31">GNRC</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="d_2019-01-01_2019-12-31">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="d_2019-01-01_2019-12-31">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="d_2019-01-01_2019-12-31">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="d_2019-01-01_2019-12-31">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="d_2019-01-01_2019-12-31">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="d_2019-01-01_2019-12-31">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="d_2019-01-01_2019-12-31">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="d_2019-01-01_2019-12-31">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="d_2019-01-01_2019-12-31">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="i_2019-06-28" decimals="INF" unitRef="USD">4191188195</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="i_2020-02-19" decimals="INF" unitRef="Share">62567525</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030635"
      unitRef="USD">322883000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030636"
      unitRef="USD">224482000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030637"
      unitRef="USD">319538000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030638"
      unitRef="USD">326133000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030641"
      unitRef="USD">522024000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56030642"
      unitRef="USD">544750000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030643"
      unitRef="USD">31384000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030644"
      unitRef="USD">25404000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030645"
      unitRef="USD">1195829000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030646"
      unitRef="USD">1120769000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030647"
      unitRef="USD">316976000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030648"
      unitRef="USD">278929000</us-gaap:PropertyPlantAndEquipmentNet>
    <gnrc:FiniteLivedCustomerListsNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030649"
      unitRef="USD">55552000</gnrc:FiniteLivedCustomerListsNet>
    <gnrc:FiniteLivedCustomerListsNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030650"
      unitRef="USD">61194000</gnrc:FiniteLivedCustomerListsNet>
    <gnrc:FiniteLivedPatentsAndTechnologyNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030651"
      unitRef="USD">85546000</gnrc:FiniteLivedPatentsAndTechnologyNet>
    <gnrc:FiniteLivedPatentsAndTechnologyNet
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56030652"
      unitRef="USD">29970000</gnrc:FiniteLivedPatentsAndTechnologyNet>
    <us-gaap:OtherIntangibleAssetsNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030653"
      unitRef="USD">8259000</us-gaap:OtherIntangibleAssetsNet>
    <us-gaap:OtherIntangibleAssetsNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030654"
      unitRef="USD">3043000</us-gaap:OtherIntangibleAssetsNet>
    <gnrc:TradeNamesNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030655"
      unitRef="USD">148377000</gnrc:TradeNamesNet>
    <gnrc:TradeNamesNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030656"
      unitRef="USD">152283000</gnrc:TradeNamesNet>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030657"
      unitRef="USD">805284000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030658"
      unitRef="USD">764655000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030659"
      unitRef="USD">2933000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030660"
      unitRef="USD">163000</us-gaap:DeferredIncomeTaxAssetsNet>
    <gnrc:OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030661"
      unitRef="USD">46913000</gnrc:OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent>
    <gnrc:OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030662"
      unitRef="USD">15308000</gnrc:OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent>
    <us-gaap:Assets
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030663"
      unitRef="USD">2665669000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030664"
      unitRef="USD">2426314000</us-gaap:Assets>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030667"
      unitRef="USD">58714000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030668"
      unitRef="USD">45583000</us-gaap:ShortTermBorrowings>
    <us-gaap:AccountsPayableCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030669"
      unitRef="USD">261977000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030670"
      unitRef="USD">328091000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030671"
      unitRef="USD">41361000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030672"
      unitRef="USD">40819000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030673"
      unitRef="USD">132629000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030674"
      unitRef="USD">144236000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030675"
      unitRef="USD">2383000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030676"
      unitRef="USD">1977000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030677"
      unitRef="USD">497064000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030678"
      unitRef="USD">560706000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030679"
      unitRef="USD">837767000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030680"
      unitRef="USD">876396000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030681"
      unitRef="USD">96328000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2018-12-31"
      decimals="-5"
      id="c56030682"
      unitRef="USD">71300000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <gnrc:OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030683"
      unitRef="USD">140432000</gnrc:OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities>
    <gnrc:OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030684"
      unitRef="USD">95647000</gnrc:OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities>
    <us-gaap:Liabilities
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030685"
      unitRef="USD">1571591000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030686"
      unitRef="USD">1604049000</us-gaap:Liabilities>
    <us-gaap:RedeemableNoncontrollingInterestEquityCarryingAmount
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030687"
      unitRef="USD">61227000</us-gaap:RedeemableNoncontrollingInterestEquityCarryingAmount>
    <us-gaap:RedeemableNoncontrollingInterestEquityCarryingAmount
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030688"
      unitRef="USD">61004000</us-gaap:RedeemableNoncontrollingInterestEquityCarryingAmount>
    <us-gaap:CommonStockValue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030690"
      unitRef="USD">717000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030691"
      unitRef="USD">712000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030698"
      unitRef="USD">498866000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030699"
      unitRef="USD">476116000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:TreasuryStockValue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030700"
      unitRef="USD">324551000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030701"
      unitRef="USD">321473000</us-gaap:TreasuryStockValue>
    <gnrc:ExcessPurchasePriceOverPredecessorBasis
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030704"
      unitRef="USD">202116000</gnrc:ExcessPurchasePriceOverPredecessorBasis>
    <gnrc:ExcessPurchasePriceOverPredecessorBasis
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030705"
      unitRef="USD">202116000</gnrc:ExcessPurchasePriceOverPredecessorBasis>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030706"
      unitRef="USD">1084383000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030707"
      unitRef="USD">831123000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030708"
      unitRef="USD">-24917000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030709"
      unitRef="USD">-23813000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030710"
      unitRef="USD">1032382000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030711"
      unitRef="USD">760549000</us-gaap:StockholdersEquity>
    <us-gaap:MinorityInterest
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030712"
      unitRef="USD">469000</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030713"
      unitRef="USD">712000</us-gaap:MinorityInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030714"
      unitRef="USD">1032851000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030715"
      unitRef="USD">761261000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56030716"
      unitRef="USD">2665669000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56030717"
      unitRef="USD">2426314000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030718"
      unitRef="USD">2204336000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030719"
      unitRef="USD">2023464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030720"
      unitRef="USD">1679373000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030721"
      unitRef="USD">1406584000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030722"
      unitRef="USD">1298424000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030723"
      unitRef="USD">1094587000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030724"
      unitRef="USD">797752000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56030725"
      unitRef="USD">725040000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030726"
      unitRef="USD">584786000</us-gaap:GrossProfit>
    <us-gaap:SellingAndMarketingExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030728"
      unitRef="USD">217683000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030729"
      unitRef="USD">191887000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030730"
      unitRef="USD">174841000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030731"
      unitRef="USD">68394000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030732"
      unitRef="USD">50019000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030733"
      unitRef="USD">42869000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030734"
      unitRef="USD">110868000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030735"
      unitRef="USD">103841000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030736"
      unitRef="USD">87581000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030737"
      unitRef="USD">28644000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030738"
      unitRef="USD">22112000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030739"
      unitRef="USD">28861000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:OperatingExpenses
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030740"
      unitRef="USD">425589000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030741"
      unitRef="USD">367859000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030742"
      unitRef="USD">334152000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030743"
      unitRef="USD">372163000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030744"
      unitRef="USD">357181000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030745"
      unitRef="USD">250634000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030747"
      unitRef="USD">41544000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030748"
      unitRef="USD">40956000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030749"
      unitRef="USD">42667000</us-gaap:InterestExpense>
    <us-gaap:InvestmentIncomeNonoperating
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030750"
      unitRef="USD">2767000</us-gaap:InvestmentIncomeNonoperating>
    <us-gaap:InvestmentIncomeNonoperating
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030751"
      unitRef="USD">1893000</us-gaap:InvestmentIncomeNonoperating>
    <us-gaap:InvestmentIncomeNonoperating
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030752"
      unitRef="USD">298000</us-gaap:InvestmentIncomeNonoperating>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030753"
      unitRef="USD">-926000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030754"
      unitRef="USD">-1332000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030755"
      unitRef="USD">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56030756"
      unitRef="USD">10920000</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030757"
      unitRef="USD">-0</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030758"
      unitRef="USD">-0</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030759"
      unitRef="USD">-1933000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56030760"
      unitRef="USD">-5710000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030761"
      unitRef="USD">-4566000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030762"
      unitRef="USD">-52556000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030763"
      unitRef="USD">-46105000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030764"
      unitRef="USD">-46935000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030765"
      unitRef="USD">319607000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030766"
      unitRef="USD">311076000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030767"
      unitRef="USD">203699000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030768"
      unitRef="USD">67299000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030769"
      unitRef="USD">69856000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030770"
      unitRef="USD">44142000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030771"
      unitRef="USD">252308000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56030772"
      unitRef="USD">241220000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030773"
      unitRef="USD">159557000</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030774"
      unitRef="USD">301000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030775"
      unitRef="USD">2963000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030776"
      unitRef="USD">1749000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030777"
      unitRef="USD">252007000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030778"
      unitRef="USD">238257000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030779"
      unitRef="USD">157808000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56030781"
      unitRef="USD">2210000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030782"
      unitRef="USD">-5976000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030783"
      unitRef="USD">15191000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030784"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030785"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030786"
      unitRef="USD">3712000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030787"
      unitRef="USD">-10541000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030788"
      unitRef="USD">-437000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030789"
      unitRef="USD">-62000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030790"
      unitRef="USD">-1104000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030791"
      unitRef="USD">-2615000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030792"
      unitRef="USD">18965000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030793"
      unitRef="USD">251204000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030794"
      unitRef="USD">238605000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030795"
      unitRef="USD">178522000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030796"
      unitRef="USD">-635000</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030797"
      unitRef="USD">1647000</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030798"
      unitRef="USD">5549000</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56030799"
      unitRef="USD">251839000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56030800"
      unitRef="USD">236958000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030801"
      unitRef="USD">172973000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56030802"
      unitRef="USDPerShare">4.09</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56030803"
      unitRef="USDPerShare">3.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56030804"
      unitRef="USDPerShare">2.56</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56030805"
      unitRef="Share">61926986</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56030806"
      unitRef="Share">61662031</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56030807"
      unitRef="Share">62040704</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56030808"
      unitRef="USDPerShare">4.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56030809"
      unitRef="USDPerShare">3.54</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56030810"
      unitRef="USDPerShare">2.53</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56030811"
      unitRef="Share">62865446</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56030812"
      unitRef="Share">62233225</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56030813"
      unitRef="Share">62642872</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:SharesOutstanding
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56030814"
      unitRef="Share">70261481</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030815"
      unitRef="USD">702000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030816"
      unitRef="USD">449049000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56030817"
      unitRef="Share">-7564874</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030818"
      unitRef="USD">-262402000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030819"
      unitRef="USD">-202116000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030820"
      unitRef="USD">452119000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030821"
      unitRef="USD">-40163000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030822"
      unitRef="USD">397189000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-4"
      id="c56030823"
      unitRef="USD">-10000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2016-12-31"
      decimals="-3"
      id="c56030824"
      unitRef="USD">397179000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030826"
      unitRef="USD">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <gnrc:ChangeInNoncontrollingInterestEquityImpact
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030827"
      unitRef="USD">2124000</gnrc:ChangeInNoncontrollingInterestEquityImpact>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030829"
      unitRef="USD">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030830"
      unitRef="USD">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030831"
      unitRef="USD">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030832"
      unitRef="USD">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <gnrc:ChangeInNoncontrollingInterestEquityImpact
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030833"
      unitRef="USD">2124000</gnrc:ChangeInNoncontrollingInterestEquityImpact>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030834"
      unitRef="USD">184000</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <gnrc:ChangeInNoncontrollingInterestEquityImpact
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-4"
      id="c56030835"
      unitRef="USD">1940000</gnrc:ChangeInNoncontrollingInterestEquityImpact>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030837"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030838"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030840"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030841"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030842"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030843"
      unitRef="USD">3712000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030844"
      unitRef="USD">3712000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030845"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030846"
      unitRef="USD">3712000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030870"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030871"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030873"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030874"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030875"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030876"
      unitRef="USD">15191000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030877"
      unitRef="USD">15191000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030878"
      unitRef="USD">-14000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030879"
      unitRef="USD">15177000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56030880"
      unitRef="Share">558692</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030881"
      unitRef="USD">6000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030882"
      unitRef="USD">2686000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56030883"
      unitRef="Share">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030884"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030885"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030886"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030887"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030888"
      unitRef="USD">2692000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030889"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030890"
      unitRef="USD">2692000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56030891"
      unitRef="Share">-0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030892"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030893"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56030894"
      unitRef="Share">39500</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030895"
      unitRef="USD">1591000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030896"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030897"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030898"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030899"
      unitRef="USD">1591000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030900"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030901"
      unitRef="USD">1591000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56030902"
      unitRef="Share">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030903"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030904"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56030905"
      unitRef="Share">844500</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030906"
      unitRef="USD">30012000</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030907"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030908"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030909"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030910"
      unitRef="USD">30012000</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030911"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030912"
      unitRef="USD">30012000</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030914"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030915"
      unitRef="USD">10205000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030917"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030918"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030919"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030920"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030921"
      unitRef="USD">10205000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030922"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030923"
      unitRef="USD">10205000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030925"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030926"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030928"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030929"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030930"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030931"
      unitRef="USD">-62000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030932"
      unitRef="USD">-62000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030933"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030934"
      unitRef="USD">-62000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030953"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030955"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030959"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030961"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030963"
      unitRef="USD">909000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030964"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030965"
      unitRef="USD">909000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030966"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030967"
      unitRef="USD">909000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030969"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030970"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030972"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030973"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030974"
      unitRef="USD">157808000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030975"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030976"
      unitRef="USD">157808000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030977"
      unitRef="USD">119000</us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest>
    <us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56030978"
      unitRef="USD">157927000</us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56030979"
      unitRef="Share">70820173</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030980"
      unitRef="USD">708000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030981"
      unitRef="USD">459816000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56030982"
      unitRef="Share">-8448874</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030983"
      unitRef="USD">-294005000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030984"
      unitRef="USD">-202116000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030985"
      unitRef="USD">610836000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030986"
      unitRef="USD">-21198000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030987"
      unitRef="USD">554041000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030988"
      unitRef="USD">279000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31"
      decimals="-4"
      id="c56030989"
      unitRef="USD">554320000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56030991"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56030992"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56030994"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56030995"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56030996"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56030997"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56030998"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56030999"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031000"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031015"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031016"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031018"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031019"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031021"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031023"
      unitRef="USD">-5976000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031024"
      unitRef="USD">-5976000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031026"
      unitRef="USD">-2000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031028"
      unitRef="USD">-5978000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031030"
      unitRef="Share">366245</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031032"
      unitRef="USD">4000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031034"
      unitRef="USD">1737000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031036"
      unitRef="Share">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031038"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031039"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031040"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031041"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031042"
      unitRef="USD">1741000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031043"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031044"
      unitRef="USD">1741000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031045"
      unitRef="Share">-0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031046"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031047"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031048"
      unitRef="Share">38186</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031049"
      unitRef="USD">1812000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031050"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031051"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031052"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031053"
      unitRef="USD">1812000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031054"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031055"
      unitRef="USD">1812000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031056"
      unitRef="Share">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031057"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031058"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031059"
      unitRef="Share">560000</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031060"
      unitRef="USD">25656000</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031061"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031062"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031063"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031064"
      unitRef="USD">25656000</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031065"
      unitRef="USD">-0</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031066"
      unitRef="USD">25656000</gnrc:SharesAcquiredUnderStockRepurchasesProgramValue>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031068"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031069"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031071"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031072"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031073"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031074"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031075"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031076"
      unitRef="USD">314000</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031077"
      unitRef="USD">314000</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031079"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031080"
      unitRef="USD">14563000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031082"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031083"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031084"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031085"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031086"
      unitRef="USD">14563000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031087"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031088"
      unitRef="USD">14563000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031090"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031091"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031093"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031094"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031095"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031096"
      unitRef="USD">-437000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031097"
      unitRef="USD">-437000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031098"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031099"
      unitRef="USD">-437000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031114"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031115"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031117"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031118"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-4"
      id="c56031119"
      unitRef="USD">-17970000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031120"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-4"
      id="c56031121"
      unitRef="USD">-17970000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031122"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56031123"
      unitRef="USD">-17970000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031125"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031126"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031129"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031131"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031132"
      unitRef="USD">238257000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031134"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031136"
      unitRef="USD">238257000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031138"
      unitRef="USD">749000</us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest>
    <us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031140"
      unitRef="USD">239006000</us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031142"
      unitRef="Share">71186418</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031144"
      unitRef="USD">712000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031146"
      unitRef="USD">476116000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031147"
      unitRef="Share">-9047060</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031148"
      unitRef="USD">-321473000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031149"
      unitRef="USD">-202116000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031150"
      unitRef="USD">831123000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031151"
      unitRef="USD">-23813000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031152"
      unitRef="USD">760549000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031153"
      unitRef="USD">712000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56031154"
      unitRef="USD">761261000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031156"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031157"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031159"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031160"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031161"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031162"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031163"
      unitRef="USD">-0</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031164"
      unitRef="USD">154000</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031165"
      unitRef="USD">154000</us-gaap:NoncontrollingInterestDecreaseFromDeconsolidation>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031167"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031168"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031170"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031171"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031172"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031173"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031174"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031175"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031176"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031189"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031190"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031192"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031193"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031194"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-4"
      id="c56031195"
      unitRef="USD">2210000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-4"
      id="c56031196"
      unitRef="USD">2210000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-4"
      id="c56031197"
      unitRef="USD">-30000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031198"
      unitRef="USD">2180000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031199"
      unitRef="Share">481308</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031200"
      unitRef="USD">5000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031201"
      unitRef="USD">6056000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031202"
      unitRef="Share">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031203"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031204"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031205"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031206"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031207"
      unitRef="USD">6061000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031208"
      unitRef="USD">0</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031209"
      unitRef="USD">6061000</gnrc:StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031210"
      unitRef="Share">-0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031211"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031212"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031213"
      unitRef="Share">55953</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031214"
      unitRef="USD">3078000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031215"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031216"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031217"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031218"
      unitRef="USD">3078000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031219"
      unitRef="USD">-0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031220"
      unitRef="USD">3078000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031222"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031223"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031225"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031226"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031227"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031228"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031229"
      unitRef="USD">-0</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031230"
      unitRef="USD">285000</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031231"
      unitRef="USD">285000</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031233"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031234"
      unitRef="USD">16694000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031236"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031237"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031238"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031239"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031240"
      unitRef="USD">16694000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031241"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031242"
      unitRef="USD">16694000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031244"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031245"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031247"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031248"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031249"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031250"
      unitRef="USD">-10541000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031251"
      unitRef="USD">-10541000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031252"
      unitRef="USD">-0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031253"
      unitRef="USD">-10541000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031255"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031256"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031260"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031262"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031264"
      unitRef="USD">1253000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031266"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031268"
      unitRef="USD">1253000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031270"
      unitRef="USD">0</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031272"
      unitRef="USD">1253000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031276"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031278"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031280"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031281"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031282"
      unitRef="USD">252007000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031283"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031284"
      unitRef="USD">252007000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031285"
      unitRef="USD">226000</us-gaap:NetIncomeLossAttributableToNonredeemableNoncontrollingInterest>
    <us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031286"
      unitRef="USD">252233000</us-gaap:NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c56031287"
      unitRef="Share">71667726</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c56031288"
      unitRef="USD">717000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c56031289"
      unitRef="USD">498866000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56031290"
      unitRef="Share">-9103013</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="-3"
      id="c56031291"
      unitRef="USD">-324551000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-ExcessPurchasePriceOverPredecessorBasisMember"
      decimals="-3"
      id="c56031292"
      unitRef="USD">-202116000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c56031293"
      unitRef="USD">1084383000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031294"
      unitRef="USD">-24917000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-ParentMember"
      decimals="-3"
      id="c56031295"
      unitRef="USD">1032382000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-NoncontrollingInterestMember"
      decimals="-3"
      id="c56031296"
      unitRef="USD">469000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031297"
      unitRef="USD">1032851000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031299"
      unitRef="USD">252308000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56031300"
      unitRef="USD">241220000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031301"
      unitRef="USD">159557000</us-gaap:ProfitLoss>
    <us-gaap:Depreciation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031303"
      unitRef="USD">32265000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031304"
      unitRef="USD">25296000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031305"
      unitRef="USD">23127000</us-gaap:Depreciation>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031306"
      unitRef="USD">28644000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031307"
      unitRef="USD">22112000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031308"
      unitRef="USD">28861000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031309"
      unitRef="USD">4712000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031310"
      unitRef="USD">4749000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031311"
      unitRef="USD">3516000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031312"
      unitRef="USD">-926000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031313"
      unitRef="USD">-1332000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031314"
      unitRef="USD">-0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031315"
      unitRef="USD">10920000</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031316"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031317"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031318"
      unitRef="USD">18733000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-5"
      id="c56031319"
      unitRef="USD">23600000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031320"
      unitRef="USD">19502000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031321"
      unitRef="USD">16694000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031322"
      unitRef="USD">14563000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031323"
      unitRef="USD">10205000</us-gaap:ShareBasedCompensation>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031324"
      unitRef="USD">-1086000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031325"
      unitRef="USD">-2474000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-4"
      id="c56031326"
      unitRef="USD">-410000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031328"
      unitRef="USD">-8231000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031329"
      unitRef="USD">43243000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031330"
      unitRef="USD">32857000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031331"
      unitRef="USD">-26369000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031332"
      unitRef="USD">152594000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031333"
      unitRef="USD">22986000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031334"
      unitRef="USD">358000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031335"
      unitRef="USD">6362000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031336"
      unitRef="USD">14783000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031337"
      unitRef="USD">-69404000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031338"
      unitRef="USD">86359000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031339"
      unitRef="USD">42788000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031340"
      unitRef="USD">-3724000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031341"
      unitRef="USD">12626000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031342"
      unitRef="USD">6105000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031343"
      unitRef="USD">-16252000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031344"
      unitRef="USD">16972000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031345"
      unitRef="USD">37029000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031346"
      unitRef="USD">2263000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031347"
      unitRef="USD">1877000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031348"
      unitRef="USD">3152000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031349"
      unitRef="USD">308887000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031350"
      unitRef="USD">247227000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031351"
      unitRef="USD">257322000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031353"
      unitRef="USD">95000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031354"
      unitRef="USD">214000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031355"
      unitRef="USD">82000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031356"
      unitRef="USD">2630000</us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables>
    <us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031357"
      unitRef="USD">3933000</us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables>
    <us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031358"
      unitRef="USD">3794000</us-gaap:ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031359"
      unitRef="USD">60802000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031360"
      unitRef="USD">47601000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031361"
      unitRef="USD">33261000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031362"
      unitRef="USD">112001000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56031363"
      unitRef="USD">65440000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031364"
      unitRef="USD">-1257000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031365"
      unitRef="USD">-170078000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031366"
      unitRef="USD">-108894000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031367"
      unitRef="USD">-28128000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromShortTermDebt
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031369"
      unitRef="USD">73340000</us-gaap:ProceedsFromShortTermDebt>
    <us-gaap:ProceedsFromShortTermDebt
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031370"
      unitRef="USD">53965000</us-gaap:ProceedsFromShortTermDebt>
    <us-gaap:ProceedsFromShortTermDebt
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031371"
      unitRef="USD">101991000</us-gaap:ProceedsFromShortTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031372"
      unitRef="USD">1660000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031373"
      unitRef="USD">51425000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031374"
      unitRef="USD">3069000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:RepaymentsOfShortTermDebt
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031375"
      unitRef="USD">59518000</us-gaap:RepaymentsOfShortTermDebt>
    <us-gaap:RepaymentsOfShortTermDebt
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56031376"
      unitRef="USD">27880000</us-gaap:RepaymentsOfShortTermDebt>
    <us-gaap:RepaymentsOfShortTermDebt
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031377"
      unitRef="USD">114874000</us-gaap:RepaymentsOfShortTermDebt>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031378"
      unitRef="USD">53049000</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031379"
      unitRef="USD">101827000</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031380"
      unitRef="USD">117475000</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031381"
      unitRef="USD">-0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031382"
      unitRef="USD">25656000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031383"
      unitRef="USD">30012000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031384"
      unitRef="USD">5550000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031385"
      unitRef="USD">-0</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031386"
      unitRef="USD">-0</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031387"
      unitRef="USD">1473000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031388"
      unitRef="USD">1702000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031389"
      unitRef="USD">3901000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031390"
      unitRef="USD">285000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031391"
      unitRef="USD">314000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031392"
      unitRef="USD">-0</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031393"
      unitRef="USD">6438000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031394"
      unitRef="USD">5659000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031395"
      unitRef="USD">5892000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031396"
      unitRef="USD">9395000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031397"
      unitRef="USD">5614000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031398"
      unitRef="USD">6951000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031399"
      unitRef="USD">-41918000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031400"
      unitRef="USD">-52034000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031401"
      unitRef="USD">-160143000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031402"
      unitRef="USD">1510000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031403"
      unitRef="USD">-289000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031404"
      unitRef="USD">2149000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031405"
      unitRef="USD">98401000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
    <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56031406"
      unitRef="USD">86010000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
    <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-5"
      id="c56031407"
      unitRef="USD">71200000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56031408"
      unitRef="USD">224482000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56031409"
      unitRef="USD">138472000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2016-12-31"
      decimals="-3"
      id="c56031410"
      unitRef="USD">67272000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031411"
      unitRef="USD">322883000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56031412"
      unitRef="USD">224482000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56031413"
      unitRef="USD">138472000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:InterestPaidNet
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031416"
      unitRef="USD">35465000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031417"
      unitRef="USD">41007000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031418"
      unitRef="USD">41105000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031419"
      unitRef="USD">61767000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031420"
      unitRef="USD">41044000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031421"
      unitRef="USD">23836000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434638">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;1.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Description of Business&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Founded in &lt;em style="font-weight: inherit; font-style: normal;"&gt;1959,&lt;/em&gt; Generac Holdings Inc. (the Company) is a leading global designer and manufacturer of a wide range of energy technology solutions. The Company provides power generation equipment, energy storage systems, and other power products&#160;serving the residential, light commercial and industrial markets. Generac&#x2019;s power products and solutions are available globally through a broad network of independent dealers, distributors, retailers, e-commerce partners, wholesalers, and equipment rental companies,&#160;as well as sold direct to certain end user customers.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Over the years, the Company has executed a number of acquisitions that support its strategic plan (refer to Item &lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt; in this Annual Report on Form &lt;em style="font-weight: inherit; font-style: normal;"&gt;10&lt;/em&gt;-K for discussion of our "Powering Our Future" strategic plan). A summary of acquisitions affecting the reporting periods presented include:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&#x25cf;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 2017, &lt;/em&gt;the Company acquired Motortech GmbH (Motortech), headquartered in Celle, Germany. Motortech is a leading manufacturer of gaseous-engine control systems and accessories, which are sold primarily to European gas-engine manufacturers and to aftermarket customers.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&#x25cf;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 2018, &lt;/em&gt;the Company acquired Selmec Equipos Industriales, S.A. de C.V. (Selmec), headquartered in Mexico City, Mexico. Selmec is a designer and manufacturer of industrial generators ranging from &lt;em style="font-weight: inherit; font-style: normal;"&gt;10kW&lt;/em&gt; to &lt;em style="font-weight: inherit; font-style: normal;"&gt;2,750kW.&lt;/em&gt; Selmec offers a market-leading service platform and specialized engineering capabilities, together with robust integration, project management and remote monitoring services.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&#x25cf;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; February 2019, &lt;/em&gt;the Company acquired a majority share of Captiva Energy Solutions Private Limited (Captiva). Captiva, founded in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2010&lt;/em&gt; and headquartered in Kolkata, India, specializes in customized industrial generators for the India market.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&#x25cf;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; March 2019, &lt;/em&gt;the Company acquired Neurio Technology Inc. (Neurio), founded in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2005&lt;/em&gt; and headquartered in Vancouver, British Columbia. Neurio is a leading energy data company focused on metering technology and sophisticated analytics to optimize energy use within a home or business.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&#x25cf;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; April 2019, &lt;/em&gt;the Company acquired Pika Energy, Inc. (Pika), founded in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2010&lt;/em&gt; and located in Westbrook, Maine. Pika is a designer and manufacturer of battery storage technologies that capture and store solar or grid power for homeowners and businesses, and is also a manufacturer of advanced power electronics, software and controls for smart energy storage and management.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
  </us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434639">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Summary of&lt;/b&gt;&lt;b&gt; Accounting Policies &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Principles of Consolidation&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The consolidated financial statements include the accounts of the Company and its subsidiaries that are consolidated in conformity with U.S. GAAP. All intercompany amounts and transactions have been eliminated in consolidation.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Cash &lt;/b&gt;&lt;b&gt;and Cash &lt;/b&gt;&lt;b&gt;Equivalents&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company considers all highly liquid investments purchased with an original maturity of &lt;em style="font-weight: inherit; font-style: normal;"&gt;three&lt;/em&gt; months or less to be cash equivalents.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Concentration of Credit Risk&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company maintains the majority of its domestic cash in &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; commercial bank in multiple operating and investment accounts. Balances on deposit are insured by the Federal Deposit Insurance Corporation (FDIC) up to specified limits. Balances in excess of FDIC limits are uninsured.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;One customer accounted for approximately 9% and 11% of accounts receivable at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; respectively. &lt;span style="-sec-ix-hidden:c56031461"&gt;&lt;span style="-sec-ix-hidden:c56031455"&gt;&lt;span style="-sec-ix-hidden:c56031458"&gt;No&lt;/span&gt;&lt;/span&gt; &lt;/span&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; customer accounted for greater than 5%, 6%, and 6%, of net sales during the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; or &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Accounts Receivable&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Receivables are recorded at their face value amount less an allowance for doubtful accounts. The Company estimates and records an allowance for doubtful accounts based on specific identification and historical experience. The Company writes off uncollectible accounts against the allowance for doubtful accounts after all collection efforts have been exhausted. Sales are generally made on an unsecured basis, and certain balances are protected by credit insurance.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Inventories&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Inventories are stated at the lower of cost or market, with cost determined generally using the &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt;-in, &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt;-out method.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Property and Equipment &lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Property and equipment are recorded at cost and are being depreciated using the straight-line method over the estimated useful lives of the assets, which are summarized below (in years). Costs of leasehold improvements are amortized over the lesser of the term of the lease (including renewal option periods) or the estimated useful lives of the improvements. Finance lease right of use assets are included in property and equipment. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; "Leases," to the consolidated financial statements for the Company's lease disclosure.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Land improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;8&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Buildings and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;10&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Dies and tools&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Vehicles&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Office equipment and systems&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;2&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Total depreciation expense was $32,265, $25,296, and $23,127 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Goodwill and Other Indefinite-Lived Intangible Assets&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Goodwill represents the excess of the purchase price over fair value of identifiable net assets acquired from business acquisitions. Goodwill is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; amortized, but is reviewed for impairment on an annual basis and between annual tests if indicators of impairment are present. The Company evaluates goodwill for impairment annually as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 31 &lt;/em&gt;or more frequently when an event occurs or circumstances change that indicates the carrying value &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be recoverable. The Company has the option to assess goodwill for impairment by performing either a qualitative assessment or quantitative test. The qualitative assessment determines whether it is more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that the fair value of a reporting unit is less than its carrying amount. If the Company determines that it is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that the fair value of a reporting unit is less than its carrying amount, then the quantitative test is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; required to be performed. If the Company determines that it is more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that the fair value of a reporting unit is less than its carrying amount, the Company is required to perform the quantitative test. In the quantitative test, the calculated fair value of the reporting unit is compared to its book value including goodwill. If the fair value of the reporting unit is in excess of its book value, the related goodwill is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; impaired. If the fair value of the reporting unit is less than its book value, an impairment loss is recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Other indefinite-lived intangible assets consist of certain tradenames. The Company tests the carrying value of these tradenames annually as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 31, &lt;/em&gt;or more frequently when an event occurs or circumstances change that indicates the carrying value &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be recoverable, by comparing the assets&#x2019; fair value to its carrying value. Fair value is measured using a relief-from-royalty approach, which assumes the fair value of the tradename is the discounted cash flows of the amount that would be paid had the Company &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; owned the tradename and instead licensed the tradename from another company.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company performed the required annual impairment tests for goodwill and other indefinite-lived intangible assets for the fiscal years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; and found &lt;span style="-sec-ix-hidden:c56031520"&gt;&lt;span style="-sec-ix-hidden:c56031521"&gt;&lt;span style="-sec-ix-hidden:c56031519"&gt;no&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;impairment.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;Impairment of Long-Lived Assets&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company periodically evaluates the carrying value of long-lived assets (excluding goodwill and indefinite-lived tradenames). Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be recoverable. If the sum of the expected future undiscounted cash flows is less than the carrying amount of an asset, a loss is recognized for the difference between the fair value and carrying value of the asset.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Debt Issuance Costs&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Debt discounts and direct costs incurred in connection with the issuance of long-term debt are deferred and recorded as a reduction of outstanding debt and amortized to interest expense using the effective interest method over the terms of the related credit agreements. $4,712, $4,749, and $3,516 of deferred financing costs and original issue discount were amortized to interest expense during fiscal years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively. Excluding the impact of any future long-term debt issuances or prepayments, estimated amortization to interest expense for the next &lt;em style="font-weight: inherit; font-style: normal;"&gt;five&lt;/em&gt; years is as follows: &lt;em style="font-weight: inherit; font-style: normal;"&gt;2020&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031536"&gt;$2,598;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2021&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031539"&gt;$2,640;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2022&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031541"&gt;$2,689;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2023&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031544"&gt;$2,579;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2024&lt;/em&gt; - $2,508.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Income Taxes&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company is a C Corporation and therefore accounts for income taxes pursuant to the liability method. Accordingly, the current or deferred tax consequences of a transaction are measured by applying the provision of enacted tax laws to determine the amount of taxes payable currently or in future years. Deferred income taxes are provided for temporary differences between the income tax bases of assets and liabilities and their carrying amounts for financial reporting purposes. In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that some portion or all of the deferred tax assets will &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the years in which those temporary differences become deductible. The Company considers taxable income in prior carryback years, the scheduled reversal of deferred tax liabilities, projected future taxable income and tax planning strategies, as appropriate, in making this assessment.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Revenue Recognition&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;br/&gt; The Company&#x2019;s revenues primarily consist of product sales to its customers. The Company considers the purchase orders, which in some cases are governed by master sales agreements, to be the contracts with the customers. For each contract, the Company considers the commitment to transfer products, each of which is distinct, to be the identified performance obligations. Revenue is measured as the amount of consideration the Company expects to be entitled in exchange for the transfer of product, which is generally the price stated in the contract specific for each item sold, adjusted for the value of expected returns, discounts, rebates, or other promotional incentives or allowances offered to our customers. Expected returns for damaged or defective product are estimated using the expected value method based upon historical product return experience. Discounts and rebates offered to customers are typically defined in the master sales agreements with customers and, therefore, are recorded using the most likely amount method based on the terms of the contract. Promotional incentives are defined programs offered for short, specific periods of time and are estimated using the expected value method based upon historical experience. The Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; expect the transaction price for revenue recognized will be subject to a significant revenue reversal. As the Company&#x2019;s product sale contracts and standard payment terms have a duration of less than &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year, it uses the practical expedient applicable to such contracts and does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; consider the time value of money. Sales, use, value add and other similar taxes assessed by governmental authorities and collected concurrent with revenue-producing activities are excluded from revenue. The Company has elected to recognize the cost for freight activities when control of the product has transferred to the customer as an expense within cost of goods sold in the consolidated statements of comprehensive income. Product revenues are recognized at the point in time when control of the product is transferred to the customer, which typically occurs upon shipment or delivery to the customer. To determine when control has transferred, the Company considers if there is a present right to payment and if legal title, physical possession, and the significant risks and rewards of ownership of the asset has transferred to the customer. As substantially all of the Company&#x2019;s product revenues are recognized at a point in time, the amount of unsatisfied performance obligations at each period end is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; material. The Company&#x2019;s contracts have an original expected duration of &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year or less. As a result, the Company has elected to use the practical expedient to &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; disclose its remaining performance obligations.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;At the request of certain customers, the Company will warehouse inventory billed to the customer but &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; delivered. Unless all revenue recognition criteria have been met, the Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; recognize revenue on these transactions until the customer takes possession of the product.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;While the Company&#x2019;s standard payment terms are less than &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year, the specific payment terms and conditions in its customer contracts vary. In some cases, customers prepay for their goods; in other cases, after appropriate credit evaluation, an open credit line is granted and payment is due in arrears. Contracts with payment in arrears are recognized in the consolidated balance sheets as accounts receivable upon revenue recognition, while contracts where customers pay in advance are recognized as customer deposits and recorded in other accrued liabilities in the consolidated balance sheets until revenue is recognized. The balance of customer deposits (contract liabilities) was $9,952 and $14,174 at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;respectively. During the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company recognized revenue of $9,589 related to amounts included in the &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;customer deposit balance. The Company typically recognizes revenue within &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year of the receipt of the customer deposit.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company offers standard warranty coverage on substantially all products that it sells and accounts for this standard warranty coverage as an assurance warranty. As such, &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; transaction price is allocated to the standard warranty, and the Company records a liability for product warranty obligations at the time of sale to a customer based upon historical warranty experience. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;11,&lt;/em&gt; &#x201c;Product Warranty Obligations,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s standard warranties.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company also sells extended warranty coverage for certain products, which it accounts for as service warranties. In most cases, the extended warranty is sold as a separate contract. As such, extended warranty sales are considered a separate performance obligation, and the extended warranty transaction is separate and distinct from the product. The extended warranty transaction price is initially recorded as deferred revenue in the consolidated balance sheets and amortized on a straight-line basis to net sales in the consolidated statements of comprehensive income over the life of the contracts following the standard warranty period. For extended warranty contracts that the Company sells under a &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt;-party marketing agreement, it is required to pay fees to the &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt;-party service provider and classifies these fees as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income consistent with how the related deferred revenue is recognized. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;11,&lt;/em&gt; &#x201c;Product Warranty Obligations,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s extended warranties.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In addition to extended warranties, the Company offers other services, including remote monitoring, installation and maintenance services in limited circumstances. Total service revenues account for less than &lt;em style="font-weight: inherit; font-style: normal;"&gt;three&lt;/em&gt; percent of revenue during the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;7,&lt;/em&gt; &#x201c;Segment Reporting,&#x201d; to the consolidated financial statements for the Company&#x2019;s disaggregated revenue disclosure. The information discussed above is applicable to each of the Company&#x2019;s product classes.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;Advertising and Co-Op Advertising&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Expenditures for advertising, included in selling and service expenses in the consolidated statements of comprehensive income, are expensed as incurred. Expenditures for advertising production costs are expensed when the related advertisement is &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt; run. Total expenditures for advertising were $44,153, $34,792, and $45,926 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Research and Development&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company expenses research and development costs as incurred. Total expenditures incurred for research and development were $68,394, $50,019, and $42,869 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Foreign Currency Translation and Transactions&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Balance sheet amounts for non-U.S. Dollar functional currency businesses are translated into U.S. Dollars at the rates of exchange in effect at the end of the fiscal year. Income and expenses incurred in a foreign currency are translated at the average rates of exchange in effect during the year. The related translation adjustments are made directly to accumulated other comprehensive loss, a component of stockholders&#x2019; equity, in the consolidated balance sheets. Gains and losses from foreign currency transactions are recognized as incurred in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Fair Value of Financial Instruments&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;820&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; &lt;i&gt;Fair Value Measurement&lt;/i&gt;&lt;i&gt;,&lt;/i&gt; defines fair value, establishes a consistent framework for measuring fair value, and expands disclosure for each major asset and liability category measured at fair value on either a recurring basis or nonrecurring basis. ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;820&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;10&lt;/em&gt; clarifies that fair value is an exit price, representing the amount that would be received in the sale of an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. As a basis for considering such assumptions, the pronouncement establishes a &lt;em style="font-weight: inherit; font-style: normal;"&gt;three&lt;/em&gt;-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value as follows: (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;) observable inputs such as quoted prices in active markets; (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;) inputs, other than the quoted prices in active markets, that are observable either directly or indirectly; and (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt;) unobservable inputs in which there is little or &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; market data, which require the reporting entity to develop its own assumptions.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company believes the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and ABL facility borrowings), excluding Term Loan borrowings, approximates the fair value of these instruments based upon their short-term nature. The fair value of Term Loan borrowings, which have an aggregate carrying value of $812,953, was approximately $833,092 (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;) at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;as calculated based on independent valuations whose inputs and significant value drivers are observable.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;For the fair value of the assets and liabilities measured on a recurring basis, refer to the fair value table in Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;5,&lt;/em&gt; &#x201c;Derivative Instruments and Hedging Activities,&#x201d; to the consolidated financial statements. The fair value of all derivative contracts is classified as Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;2.&lt;/em&gt; The valuation techniques used to measure the fair value of derivative contracts, all of which have counterparties with high credit ratings, were based on quoted market prices or model driven valuations using significant inputs derived from or corroborated by observable market data. The fair value of derivative contracts considers the Company&#x2019;s credit risk in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;820&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;10.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Use of Estimates&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Derivative Instruments and Hedging Activities&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company records all derivatives in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;815,&lt;/em&gt; &lt;i&gt;Derivatives and Hedging&lt;/i&gt;&lt;i&gt;,&lt;/i&gt; which requires derivative instruments be reported in the consolidated balance sheets at fair value and establishes criteria for designation and effectiveness of hedging relationships. The Company is exposed to market risk such as changes in commodity prices, foreign currencies and interest rates. The Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; hold or issue derivative financial instruments for trading purposes. Refer to Item &lt;em style="font-weight: inherit; font-style: normal;"&gt;7A&lt;/em&gt; of this Annual Report on Form &lt;em style="font-weight: inherit; font-style: normal;"&gt;10&lt;/em&gt;-K for further information on the Company&#x2019;s derivatives.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;S&lt;/b&gt;&lt;b&gt;hare&lt;/b&gt;&lt;b&gt;-Based Compensation&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Share-based compensation expense, including stock options and restricted stock awards, is generally recognized on a straight-line basis over the vesting period based on the fair value of awards which are expected to vest. The fair value of all share-based awards is estimated on the date of grant. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;17,&lt;/em&gt; &#x201c;Share Plans,&#x201d; to the consolidated financial statements for further information on the Company&#x2019;s share-based compensation plans and accounting.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b/&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;New Accounting Pronouncements &lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;New Accounting Standards &lt;em style="font-weight: inherit; font-style: normal;"&gt;Not&lt;/em&gt; Yet Adopted&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 2016, &lt;/em&gt;the Financial Accounting Standards&#160;Board (FASB) issued Accounting Standards Update (ASU) &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;13,&lt;/em&gt; &lt;i&gt;Financial Instruments &#x2013; Credit Losses (Topic &lt;em style="font-weight: inherit; font-style: normal;"&gt;326&lt;/em&gt;)&lt;/i&gt;: &lt;i&gt;Measurement of Credit Losses on Financial Instruments&lt;/i&gt;, which represents a new credit loss standard that will change the impairment model for most financial assets and certain other financial instruments. Specifically, this guidance will require entities to utilize a new &#x201c;expected loss&#x201d; model as it relates to trade and other receivables. In addition, entities will be required to recognize an allowance for estimated credit losses on available-for-sale debt securities, regardless of the length of time that a security has been in an unrealized loss position. This guidance will be effective for annual reporting periods beginning after &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 15, 2019, &lt;/em&gt;including interim periods within those annual reporting periods, and early adoption is permitted. The Company has established a project plan and an implementation team to adopt and apply the new standard. The Company is in the process of implementing necessary changes to accounting policies, processes, and controls to enable compliance with this new standard. The Company continues to evaluate the impact the adoption of this standard will have on its consolidated financial statements, and does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; believe this new standard will have a material impact.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;There are several other new accounting pronouncements issued by the FASB. Each of these pronouncements, as applicable, has been or will be adopted by the Company. Management does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; believe any of these accounting pronouncements has had or will have a material impact on the Company&#x2019;s consolidated financial statements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Recently Adopted &lt;/i&gt;&lt;/b&gt;&lt;b&gt;&lt;i&gt;Accounting Standards&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;02,&lt;/em&gt; &lt;i&gt;Leases&lt;/i&gt;&lt;i&gt; &lt;/i&gt;(Topic &lt;em style="font-weight: inherit; font-style: normal;"&gt;842&lt;/em&gt;). This guidance was issued to increase transparency and comparability among organizations by requiring the recognition of lease assets and lease liabilities in the balance sheet and by disclosing key information about leasing arrangements. The Company adopted this standard using the modified retrospective approach as of the date of adoption, meaning &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; prior period balances were impacted by the adoption. Additionally, the Company elected to adopt the standard using the package of practical expedients permitted under the standard&#x2019;s transition guidance, which allowed the Company to carry forward its historical lease classifications, and embedded lease and initial direct cost assessments. The adoption of the standard had a material impact on the Company&#x2019;s consolidated balance sheet primarily related to the recognition of right-of-use (ROU) assets and lease liabilities for operating leases. However, the adoption did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have a material impact on the consolidated statement of comprehensive income and statement of cash flows. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; &#x201c;Leases,&#x201d; for further information regarding the Company&#x2019;s leases.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;02,&lt;/em&gt; &lt;i&gt;Reclassification of Certain Tax Effects from Accumulated Other Comprehensive Income&lt;/i&gt;. This guidance was issued to address the impact of the change in the U.S. federal corporate income tax rate from the &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; U.S. Tax Cuts and Jobs Act (the &#x201c;Tax Act&#x201d;) on items recorded as a component of accumulated other comprehensive income (AOCI). This guidance allows companies to reclassify to retained earnings the stranded tax effects lodged in AOCI as a result of the Tax Act. Upon adoption of the ASU, the Company elected to &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; reclassify the stranded income tax effects from AOCI to retained earnings.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;12,&lt;/em&gt; &lt;i&gt;Derivatives&lt;/i&gt;&lt;i&gt; and Hedging &#x2013; Targeted Improvements to Accounting for Hedging Activities&lt;/i&gt;. This guidance was issued to improve the financial reporting of hedging relationships to better portray the economic results of an entity&#x2019;s risk management activities in its financial statements and to make certain targeted improvements to simplify the application of the hedge accounting guidance. The adoption of this standard did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have an impact on the Company&#x2019;s hedging strategies, and did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have a material impact on the Company&#x2019;s results of operations and financial position.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; April 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;15,&lt;/em&gt; &lt;i&gt;Intangibles &#x2013; Goodwill and Other &#x2013; Internal-Use Software: Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That is a Service Contract.&lt;/i&gt; This guidance was issued to address the diversity in practice related to the accounting for costs of implementation activities performed in a cloud computing arrangement that is a service contract. The Company adopted this standard prospectively, impacting all implementation costs incurred after adoption. The adoption did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have a material impact on the Company&#x2019;s results of operations and financial position.&lt;/p&gt;&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"/&gt;
  </us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114338">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Principles of Consolidation&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The consolidated financial statements include the accounts of the Company and its subsidiaries that are consolidated in conformity with U.S. GAAP. All intercompany amounts and transactions have been eliminated in consolidation.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114339">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Cash &lt;/b&gt;&lt;b&gt;and Cash &lt;/b&gt;&lt;b&gt;Equivalents&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company considers all highly liquid investments purchased with an original maturity of &lt;em style="font-weight: inherit; font-style: normal;"&gt;three&lt;/em&gt; months or less to be cash equivalents.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk contextRef="d_2019-01-01_2019-12-31" id="c56114341">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Concentration of Credit Risk&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company maintains the majority of its domestic cash in &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; commercial bank in multiple operating and investment accounts. Balances on deposit are insured by the Federal Deposit Insurance Corporation (FDIC) up to specified limits. Balances in excess of FDIC limits are uninsured.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;One customer accounted for approximately 9% and 11% of accounts receivable at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; respectively. &lt;span style="-sec-ix-hidden:c56031461"&gt;&lt;span style="-sec-ix-hidden:c56031455"&gt;&lt;span style="-sec-ix-hidden:c56031458"&gt;No&lt;/span&gt;&lt;/span&gt; &lt;/span&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; customer accounted for greater than 5%, 6%, and 6%, of net sales during the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; or &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="2"
      id="c56031445"
      unitRef="Pure">0.09</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="2"
      id="c56031448"
      unitRef="Pure">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="2"
      id="c56031468"
      unitRef="Pure">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="2"
      id="c56031471"
      unitRef="Pure">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="2"
      id="c56031475"
      unitRef="Pure">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ReceivablesPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114342">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Accounts Receivable&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Receivables are recorded at their face value amount less an allowance for doubtful accounts. The Company estimates and records an allowance for doubtful accounts based on specific identification and historical experience. The Company writes off uncollectible accounts against the allowance for doubtful accounts after all collection efforts have been exhausted. Sales are generally made on an unsecured basis, and certain balances are protected by credit insurance.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:ReceivablesPolicyTextBlock>
    <us-gaap:InventoryPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114343">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Inventories&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Inventories are stated at the lower of cost or market, with cost determined generally using the &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt;-in, &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt;-out method.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114344">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Property and Equipment &lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Property and equipment are recorded at cost and are being depreciated using the straight-line method over the estimated useful lives of the assets, which are summarized below (in years). Costs of leasehold improvements are amortized over the lesser of the term of the lease (including renewal option periods) or the estimated useful lives of the improvements. Finance lease right of use assets are included in property and equipment. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; "Leases," to the consolidated financial statements for the Company's lease disclosure.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Land improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;8&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Buildings and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;10&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Dies and tools&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Vehicles&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Office equipment and systems&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;2&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Total depreciation expense was $32,265, $25,296, and $23,127 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434640">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Land improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;8&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Buildings and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;10&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Dies and tools&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Vehicles&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Office equipment and systems&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;3&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: right;"&gt;2&lt;/td&gt;
       &lt;td style="width: 4%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 6%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MinimumMember"
      id="c56031627">P8Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MaximumMember"
      id="c56031628">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MinimumMember"
      id="c56031629">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember_RangeAxis-MaximumMember"
      id="c56031630">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember"
      id="c56031631">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember"
      id="c56031632">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MinimumMember"
      id="c56031633">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember_RangeAxis-MaximumMember"
      id="c56031634">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MinimumMember"
      id="c56031635">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember_RangeAxis-MaximumMember"
      id="c56031636">P6Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MinimumMember"
      id="c56031637">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember_RangeAxis-MaximumMember"
      id="c56031638">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember"
      id="c56031639">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember"
      id="c56031640">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:Depreciation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031495"
      unitRef="USD">32265000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031496"
      unitRef="USD">25296000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031497"
      unitRef="USD">23127000</us-gaap:Depreciation>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy contextRef="d_2019-01-01_2019-12-31" id="c56114345">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Goodwill and Other Indefinite-Lived Intangible Assets&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Goodwill represents the excess of the purchase price over fair value of identifiable net assets acquired from business acquisitions. Goodwill is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; amortized, but is reviewed for impairment on an annual basis and between annual tests if indicators of impairment are present. The Company evaluates goodwill for impairment annually as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 31 &lt;/em&gt;or more frequently when an event occurs or circumstances change that indicates the carrying value &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be recoverable. The Company has the option to assess goodwill for impairment by performing either a qualitative assessment or quantitative test. The qualitative assessment determines whether it is more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that the fair value of a reporting unit is less than its carrying amount. If the Company determines that it is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that the fair value of a reporting unit is less than its carrying amount, then the quantitative test is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; required to be performed. If the Company determines that it is more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that the fair value of a reporting unit is less than its carrying amount, the Company is required to perform the quantitative test. In the quantitative test, the calculated fair value of the reporting unit is compared to its book value including goodwill. If the fair value of the reporting unit is in excess of its book value, the related goodwill is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; impaired. If the fair value of the reporting unit is less than its book value, an impairment loss is recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Other indefinite-lived intangible assets consist of certain tradenames. The Company tests the carrying value of these tradenames annually as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 31, &lt;/em&gt;or more frequently when an event occurs or circumstances change that indicates the carrying value &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be recoverable, by comparing the assets&#x2019; fair value to its carrying value. Fair value is measured using a relief-from-royalty approach, which assumes the fair value of the tradename is the discounted cash flows of the amount that would be paid had the Company &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; owned the tradename and instead licensed the tradename from another company.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company performed the required annual impairment tests for goodwill and other indefinite-lived intangible assets for the fiscal years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; and found &lt;span style="-sec-ix-hidden:c56031520"&gt;&lt;span style="-sec-ix-hidden:c56031521"&gt;&lt;span style="-sec-ix-hidden:c56031519"&gt;no&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;impairment.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114346">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;Impairment of Long-Lived Assets&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company periodically evaluates the carrying value of long-lived assets (excluding goodwill and indefinite-lived tradenames). Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be recoverable. If the sum of the expected future undiscounted cash flows is less than the carrying amount of an asset, a loss is recognized for the difference between the fair value and carrying value of the asset.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:DebtPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114347">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Debt Issuance Costs&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Debt discounts and direct costs incurred in connection with the issuance of long-term debt are deferred and recorded as a reduction of outstanding debt and amortized to interest expense using the effective interest method over the terms of the related credit agreements. $4,712, $4,749, and $3,516 of deferred financing costs and original issue discount were amortized to interest expense during fiscal years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively. Excluding the impact of any future long-term debt issuances or prepayments, estimated amortization to interest expense for the next &lt;em style="font-weight: inherit; font-style: normal;"&gt;five&lt;/em&gt; years is as follows: &lt;em style="font-weight: inherit; font-style: normal;"&gt;2020&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031536"&gt;$2,598;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2021&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031539"&gt;$2,640;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2022&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031541"&gt;$2,689;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2023&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56031544"&gt;$2,579;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2024&lt;/em&gt; - $2,508.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:DebtPolicyTextBlock>
    <gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031525"
      unitRef="USD">4712000</gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium>
    <gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031527"
      unitRef="USD">4749000</gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium>
    <gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031528"
      unitRef="USD">3516000</gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium>
    <gnrc:DeferredCostsAmortizationExpenseYearFive
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031546"
      unitRef="USD">2508000</gnrc:DeferredCostsAmortizationExpenseYearFive>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114348">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Income Taxes&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company is a C Corporation and therefore accounts for income taxes pursuant to the liability method. Accordingly, the current or deferred tax consequences of a transaction are measured by applying the provision of enacted tax laws to determine the amount of taxes payable currently or in future years. Deferred income taxes are provided for temporary differences between the income tax bases of assets and liabilities and their carrying amounts for financial reporting purposes. In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; that some portion or all of the deferred tax assets will &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the years in which those temporary differences become deductible. The Company considers taxable income in prior carryback years, the scheduled reversal of deferred tax liabilities, projected future taxable income and tax planning strategies, as appropriate, in making this assessment.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114349">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Revenue Recognition&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;br/&gt; The Company&#x2019;s revenues primarily consist of product sales to its customers. The Company considers the purchase orders, which in some cases are governed by master sales agreements, to be the contracts with the customers. For each contract, the Company considers the commitment to transfer products, each of which is distinct, to be the identified performance obligations. Revenue is measured as the amount of consideration the Company expects to be entitled in exchange for the transfer of product, which is generally the price stated in the contract specific for each item sold, adjusted for the value of expected returns, discounts, rebates, or other promotional incentives or allowances offered to our customers. Expected returns for damaged or defective product are estimated using the expected value method based upon historical product return experience. Discounts and rebates offered to customers are typically defined in the master sales agreements with customers and, therefore, are recorded using the most likely amount method based on the terms of the contract. Promotional incentives are defined programs offered for short, specific periods of time and are estimated using the expected value method based upon historical experience. The Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; expect the transaction price for revenue recognized will be subject to a significant revenue reversal. As the Company&#x2019;s product sale contracts and standard payment terms have a duration of less than &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year, it uses the practical expedient applicable to such contracts and does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; consider the time value of money. Sales, use, value add and other similar taxes assessed by governmental authorities and collected concurrent with revenue-producing activities are excluded from revenue. The Company has elected to recognize the cost for freight activities when control of the product has transferred to the customer as an expense within cost of goods sold in the consolidated statements of comprehensive income. Product revenues are recognized at the point in time when control of the product is transferred to the customer, which typically occurs upon shipment or delivery to the customer. To determine when control has transferred, the Company considers if there is a present right to payment and if legal title, physical possession, and the significant risks and rewards of ownership of the asset has transferred to the customer. As substantially all of the Company&#x2019;s product revenues are recognized at a point in time, the amount of unsatisfied performance obligations at each period end is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; material. The Company&#x2019;s contracts have an original expected duration of &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year or less. As a result, the Company has elected to use the practical expedient to &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; disclose its remaining performance obligations.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;At the request of certain customers, the Company will warehouse inventory billed to the customer but &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; delivered. Unless all revenue recognition criteria have been met, the Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; recognize revenue on these transactions until the customer takes possession of the product.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;While the Company&#x2019;s standard payment terms are less than &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year, the specific payment terms and conditions in its customer contracts vary. In some cases, customers prepay for their goods; in other cases, after appropriate credit evaluation, an open credit line is granted and payment is due in arrears. Contracts with payment in arrears are recognized in the consolidated balance sheets as accounts receivable upon revenue recognition, while contracts where customers pay in advance are recognized as customer deposits and recorded in other accrued liabilities in the consolidated balance sheets until revenue is recognized. The balance of customer deposits (contract liabilities) was $9,952 and $14,174 at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;respectively. During the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company recognized revenue of $9,589 related to amounts included in the &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;customer deposit balance. The Company typically recognizes revenue within &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; year of the receipt of the customer deposit.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company offers standard warranty coverage on substantially all products that it sells and accounts for this standard warranty coverage as an assurance warranty. As such, &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; transaction price is allocated to the standard warranty, and the Company records a liability for product warranty obligations at the time of sale to a customer based upon historical warranty experience. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;11,&lt;/em&gt; &#x201c;Product Warranty Obligations,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s standard warranties.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company also sells extended warranty coverage for certain products, which it accounts for as service warranties. In most cases, the extended warranty is sold as a separate contract. As such, extended warranty sales are considered a separate performance obligation, and the extended warranty transaction is separate and distinct from the product. The extended warranty transaction price is initially recorded as deferred revenue in the consolidated balance sheets and amortized on a straight-line basis to net sales in the consolidated statements of comprehensive income over the life of the contracts following the standard warranty period. For extended warranty contracts that the Company sells under a &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt;-party marketing agreement, it is required to pay fees to the &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt;-party service provider and classifies these fees as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income consistent with how the related deferred revenue is recognized. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;11,&lt;/em&gt; &#x201c;Product Warranty Obligations,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s extended warranties.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In addition to extended warranties, the Company offers other services, including remote monitoring, installation and maintenance services in limited circumstances. Total service revenues account for less than &lt;em style="font-weight: inherit; font-style: normal;"&gt;three&lt;/em&gt; percent of revenue during the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;7,&lt;/em&gt; &#x201c;Segment Reporting,&#x201d; to the consolidated financial statements for the Company&#x2019;s disaggregated revenue disclosure. The information discussed above is applicable to each of the Company&#x2019;s product classes.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031558"
      unitRef="USD">9952000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56031559"
      unitRef="USD">14174000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031560"
      unitRef="USD">9589000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:AdvertisingCostsPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114350">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;Advertising and Co-Op Advertising&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Expenditures for advertising, included in selling and service expenses in the consolidated statements of comprehensive income, are expensed as incurred. Expenditures for advertising production costs are expensed when the related advertisement is &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt; run. Total expenditures for advertising were $44,153, $34,792, and $45,926 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031571"
      unitRef="USD">44153000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031572"
      unitRef="USD">34792000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031573"
      unitRef="USD">45926000</us-gaap:AdvertisingExpense>
    <us-gaap:ResearchAndDevelopmentExpensePolicy contextRef="d_2019-01-01_2019-12-31" id="c56114351">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Research and Development&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company expenses research and development costs as incurred. Total expenditures incurred for research and development were $68,394, $50,019, and $42,869 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031576"
      unitRef="USD">68394000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031577"
      unitRef="USD">50019000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031578"
      unitRef="USD">42869000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114352">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Foreign Currency Translation and Transactions&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Balance sheet amounts for non-U.S. Dollar functional currency businesses are translated into U.S. Dollars at the rates of exchange in effect at the end of the fiscal year. Income and expenses incurred in a foreign currency are translated at the average rates of exchange in effect during the year. The related translation adjustments are made directly to accumulated other comprehensive loss, a component of stockholders&#x2019; equity, in the consolidated balance sheets. Gains and losses from foreign currency transactions are recognized as incurred in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="d_2019-01-01_2019-12-31" id="c56114353">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Fair Value of Financial Instruments&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;820&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; &lt;i&gt;Fair Value Measurement&lt;/i&gt;&lt;i&gt;,&lt;/i&gt; defines fair value, establishes a consistent framework for measuring fair value, and expands disclosure for each major asset and liability category measured at fair value on either a recurring basis or nonrecurring basis. ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;820&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;10&lt;/em&gt; clarifies that fair value is an exit price, representing the amount that would be received in the sale of an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. As a basis for considering such assumptions, the pronouncement establishes a &lt;em style="font-weight: inherit; font-style: normal;"&gt;three&lt;/em&gt;-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value as follows: (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;) observable inputs such as quoted prices in active markets; (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;) inputs, other than the quoted prices in active markets, that are observable either directly or indirectly; and (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt;) unobservable inputs in which there is little or &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; market data, which require the reporting entity to develop its own assumptions.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company believes the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and ABL facility borrowings), excluding Term Loan borrowings, approximates the fair value of these instruments based upon their short-term nature. The fair value of Term Loan borrowings, which have an aggregate carrying value of $812,953, was approximately $833,092 (Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;) at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;as calculated based on independent valuations whose inputs and significant value drivers are observable.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;For the fair value of the assets and liabilities measured on a recurring basis, refer to the fair value table in Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;5,&lt;/em&gt; &#x201c;Derivative Instruments and Hedging Activities,&#x201d; to the consolidated financial statements. The fair value of all derivative contracts is classified as Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;2.&lt;/em&gt; The valuation techniques used to measure the fair value of derivative contracts, all of which have counterparties with high credit ratings, were based on quoted market prices or model driven valuations using significant inputs derived from or corroborated by observable market data. The fair value of derivative contracts considers the Company&#x2019;s credit risk in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;820&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;10.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:LongTermDebt
      contextRef="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56031590"
      unitRef="USD">812953000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentFairValue
      contextRef="i_2019-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-3"
      id="c56031591"
      unitRef="USD">833092000</us-gaap:DebtInstrumentFairValue>
    <us-gaap:UseOfEstimates contextRef="d_2019-01-01_2019-12-31" id="c56114354">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Use of Estimates&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:DerivativesPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114355">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Derivative Instruments and Hedging Activities&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company records all derivatives in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;815,&lt;/em&gt; &lt;i&gt;Derivatives and Hedging&lt;/i&gt;&lt;i&gt;,&lt;/i&gt; which requires derivative instruments be reported in the consolidated balance sheets at fair value and establishes criteria for designation and effectiveness of hedging relationships. The Company is exposed to market risk such as changes in commodity prices, foreign currencies and interest rates. The Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; hold or issue derivative financial instruments for trading purposes. Refer to Item &lt;em style="font-weight: inherit; font-style: normal;"&gt;7A&lt;/em&gt; of this Annual Report on Form &lt;em style="font-weight: inherit; font-style: normal;"&gt;10&lt;/em&gt;-K for further information on the Company&#x2019;s derivatives.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;</us-gaap:DerivativesPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="d_2019-01-01_2019-12-31" id="c56114356">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;S&lt;/b&gt;&lt;b&gt;hare&lt;/b&gt;&lt;b&gt;-Based Compensation&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Share-based compensation expense, including stock options and restricted stock awards, is generally recognized on a straight-line basis over the vesting period based on the fair value of awards which are expected to vest. The fair value of all share-based awards is estimated on the date of grant. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;17,&lt;/em&gt; &#x201c;Share Plans,&#x201d; to the consolidated financial statements for further information on the Company&#x2019;s share-based compensation plans and accounting.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="d_2019-01-01_2019-12-31" id="c56114357">&lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;New Accounting Pronouncements &lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;New Accounting Standards &lt;em style="font-weight: inherit; font-style: normal;"&gt;Not&lt;/em&gt; Yet Adopted&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 2016, &lt;/em&gt;the Financial Accounting Standards&#160;Board (FASB) issued Accounting Standards Update (ASU) &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;13,&lt;/em&gt; &lt;i&gt;Financial Instruments &#x2013; Credit Losses (Topic &lt;em style="font-weight: inherit; font-style: normal;"&gt;326&lt;/em&gt;)&lt;/i&gt;: &lt;i&gt;Measurement of Credit Losses on Financial Instruments&lt;/i&gt;, which represents a new credit loss standard that will change the impairment model for most financial assets and certain other financial instruments. Specifically, this guidance will require entities to utilize a new &#x201c;expected loss&#x201d; model as it relates to trade and other receivables. In addition, entities will be required to recognize an allowance for estimated credit losses on available-for-sale debt securities, regardless of the length of time that a security has been in an unrealized loss position. This guidance will be effective for annual reporting periods beginning after &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 15, 2019, &lt;/em&gt;including interim periods within those annual reporting periods, and early adoption is permitted. The Company has established a project plan and an implementation team to adopt and apply the new standard. The Company is in the process of implementing necessary changes to accounting policies, processes, and controls to enable compliance with this new standard. The Company continues to evaluate the impact the adoption of this standard will have on its consolidated financial statements, and does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; believe this new standard will have a material impact.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;There are several other new accounting pronouncements issued by the FASB. Each of these pronouncements, as applicable, has been or will be adopted by the Company. Management does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; believe any of these accounting pronouncements has had or will have a material impact on the Company&#x2019;s consolidated financial statements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Recently Adopted &lt;/i&gt;&lt;/b&gt;&lt;b&gt;&lt;i&gt;Accounting Standards&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;02,&lt;/em&gt; &lt;i&gt;Leases&lt;/i&gt;&lt;i&gt; &lt;/i&gt;(Topic &lt;em style="font-weight: inherit; font-style: normal;"&gt;842&lt;/em&gt;). This guidance was issued to increase transparency and comparability among organizations by requiring the recognition of lease assets and lease liabilities in the balance sheet and by disclosing key information about leasing arrangements. The Company adopted this standard using the modified retrospective approach as of the date of adoption, meaning &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; prior period balances were impacted by the adoption. Additionally, the Company elected to adopt the standard using the package of practical expedients permitted under the standard&#x2019;s transition guidance, which allowed the Company to carry forward its historical lease classifications, and embedded lease and initial direct cost assessments. The adoption of the standard had a material impact on the Company&#x2019;s consolidated balance sheet primarily related to the recognition of right-of-use (ROU) assets and lease liabilities for operating leases. However, the adoption did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have a material impact on the consolidated statement of comprehensive income and statement of cash flows. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; &#x201c;Leases,&#x201d; for further information regarding the Company&#x2019;s leases.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;02,&lt;/em&gt; &lt;i&gt;Reclassification of Certain Tax Effects from Accumulated Other Comprehensive Income&lt;/i&gt;. This guidance was issued to address the impact of the change in the U.S. federal corporate income tax rate from the &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; U.S. Tax Cuts and Jobs Act (the &#x201c;Tax Act&#x201d;) on items recorded as a component of accumulated other comprehensive income (AOCI). This guidance allows companies to reclassify to retained earnings the stranded tax effects lodged in AOCI as a result of the Tax Act. Upon adoption of the ASU, the Company elected to &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; reclassify the stranded income tax effects from AOCI to retained earnings.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;12,&lt;/em&gt; &lt;i&gt;Derivatives&lt;/i&gt;&lt;i&gt; and Hedging &#x2013; Targeted Improvements to Accounting for Hedging Activities&lt;/i&gt;. This guidance was issued to improve the financial reporting of hedging relationships to better portray the economic results of an entity&#x2019;s risk management activities in its financial statements and to make certain targeted improvements to simplify the application of the hedge accounting guidance. The adoption of this standard did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have an impact on the Company&#x2019;s hedging strategies, and did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have a material impact on the Company&#x2019;s results of operations and financial position.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; April 1, 2019, &lt;/em&gt;the Company adopted ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;15,&lt;/em&gt; &lt;i&gt;Intangibles &#x2013; Goodwill and Other &#x2013; Internal-Use Software: Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That is a Service Contract.&lt;/i&gt; This guidance was issued to address the diversity in practice related to the accounting for costs of implementation activities performed in a cloud computing arrangement that is a service contract. The Company adopted this standard prospectively, impacting all implementation costs incurred after adoption. The adoption did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; have a material impact on the Company&#x2019;s results of operations and financial position.&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:BusinessCombinationDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434641">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;3.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Acquisitions&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;Acquisition of Pika&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; April 26, 2019, &lt;/em&gt;the Company acquired Pika for a purchase price, net of cash acquired, of $49,068. The acquisition purchase price was funded solely through cash on hand.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company recorded a preliminary purchase price allocation during the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; which was trued-up in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; based upon its estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $58,196 of intangible assets, including $19,896 of goodwill recorded in the Domestic segment, as of the acquisition date. The goodwill ascribed to the acquisition is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; deductible for tax purposes. The accompanying consolidated financial statements include the results of Pika from the date of acquisition through &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019. &lt;/em&gt;The preliminary allocation of the purchase price is based on a preliminary valuation performed to determine the fair value of the net assets as of the acquisition date. The purchase price allocation is subject to further analysis and review, primarily around the review and final valuation of acquired intangible assets.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;Acquisition of Neurio&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; March 12, 2019, &lt;/em&gt;the Company acquired Neurio for a purchase price of $59,071, net of cash acquired and inclusive of a deferred payment of $7,922 which was made during the &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt; The acquisition purchase price was funded solely through cash on hand.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company recorded a preliminary purchase price allocation in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; which was trued-up in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; based upon its estimates of the fair value of the acquired assets and assumed liabilities. As a result, the Company recorded approximately $58,762 of intangible assets, including $17,862 of goodwill recorded in the Domestic segment, as of the acquisition date. Substantially all of the goodwill and other intangible assets ascribed to this acquisition are&#160;deductible for tax purposes. The accompanying consolidated financial statements include the results of Neurio from the date of acquisition through &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019. &lt;/em&gt;The preliminary allocation of the purchase price is based on a preliminary valuation performed to determine the fair value of the net assets as of the acquisition date. The purchase price allocation is subject to further analysis and review, primarily around the review and final valuation of acquired intangible assets.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;Acquisition of Selmec&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 1, 2018, &lt;/em&gt;the Company acquired Selmec for a purchase price of $79,972, net of cash acquired and inclusive of earnout payments of $14,902. Changes in the fair value of the earnout liability during &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; of $(977), which included interest accretion of $2,740 and other fair value remeasurement adjustments of $(3,717), were recognized as a component of operating income in the Company&#x2019;s consolidated statements of comprehensive income for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019. &lt;/em&gt;The acquisition purchase price was funded solely through cash on hand.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company finalized the Selmec purchase price allocation during the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; based upon its estimates of the fair value of the acquired assets and assumed liabilities. The final purchase price allocation as of the &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 1, 2018 &lt;/em&gt;opening balance sheet date was as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;June 1, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 83%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accounts receivable&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;14,302&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Inventories&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Prepaid expense and other assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,323&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Property and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,572&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33,631&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Goodwill&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,196&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,252&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;597&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total assets acquired&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;115,873&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accounts payable&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,216&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accrued wages and employee benefits&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;397&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other accrued liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,671&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,974&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,643&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Net assets acquired&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;79,972&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The goodwill ascribed to the acquisition is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; deductible for tax purposes. The accompanying consolidated financial statements include the results of Selmec from the date of acquisition through &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&lt;i&gt;Pro Forma Information&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following unaudited pro forma information of the Company gives effect to all acquisitions as though the transactions had occurred on &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2017.&#160;&lt;/em&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;1,&lt;/em&gt; &#x201c;Description of Business,&#x201d; for further information on the acquisitions included in the table.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt 7.2pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net Sales:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;As reported&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,204,336&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,023,464&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,679,373&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Pro forma&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,206,952&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,067,737&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,755,358&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;As reported&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;252,007&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;238,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;157,808&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Pro forma&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;248,335&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;230,379&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;151,764&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;"&gt;Net income attributable to Generac Holdings Inc. per common share - diluted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;As reported&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.03&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.54&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.53&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Pro forma&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.97&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.41&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.44&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;This unaudited pro forma information is presented for informational purposes only and is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; necessarily indicative of the results of operations that actually would have been achieved had the acquisitions been consummated on &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2017.&lt;/em&gt;&lt;/p&gt;
  </us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2019-04-26_2019-04-26_BusinessAcquisitionAxis-PikaMember"
      decimals="-3"
      id="c56031642"
      unitRef="USD">49068000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <gnrc:BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill
      contextRef="i_2019-04-26_BusinessAcquisitionAxis-PikaMember"
      decimals="-3"
      id="c56031647"
      unitRef="USD">58196000</gnrc:BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill>
    <us-gaap:Goodwill
      contextRef="i_2019-04-26_BusinessAcquisitionAxis-PikaMember"
      decimals="-3"
      id="c56031648"
      unitRef="USD">19896000</us-gaap:Goodwill>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2019-03-12_2019-03-12_BusinessAcquisitionAxis-NeurioMember"
      decimals="-3"
      id="c56031650"
      unitRef="USD">59071000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2019-07-01_2019-09-30_BusinessAcquisitionAxis-NeurioMember"
      decimals="-3"
      id="c56031651"
      unitRef="USD">7922000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <gnrc:BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill
      contextRef="i_2019-03-12_BusinessAcquisitionAxis-NeurioMember"
      decimals="-3"
      id="c56031658"
      unitRef="USD">58762000</gnrc:BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill>
    <us-gaap:Goodwill
      contextRef="i_2019-03-12_BusinessAcquisitionAxis-NeurioMember"
      decimals="-3"
      id="c56031659"
      unitRef="USD">17862000</us-gaap:Goodwill>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="d_2018-06-01_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031660"
      unitRef="USD">79972000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031661"
      unitRef="USD">14902000</us-gaap:BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized>
    <gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue
      contextRef="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031663"
      unitRef="USD">-977000</gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue>
    <gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion
      contextRef="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember"
      decimals="-4"
      id="c56031664"
      unitRef="USD">2740000</gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion>
    <gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments
      contextRef="d_2019-01-01_2019-12-31_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031665"
      unitRef="USD">-3717000</gnrc:BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434642">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;June 1, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 83%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accounts receivable&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;14,302&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Inventories&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Prepaid expense and other assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,323&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Property and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,572&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33,631&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Goodwill&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,196&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,252&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;597&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total assets acquired&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;115,873&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accounts payable&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,216&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accrued wages and employee benefits&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;397&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other accrued liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,671&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,974&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,643&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Net assets acquired&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;79,972&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031672"
      unitRef="USD">14302000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-6"
      id="c56031673"
      unitRef="USD">8000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031674"
      unitRef="USD">4323000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031675"
      unitRef="USD">5572000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031676"
      unitRef="USD">33631000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031677"
      unitRef="USD">46196000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031678"
      unitRef="USD">3252000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031679"
      unitRef="USD">597000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <gnrc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031680"
      unitRef="USD">115873000</gnrc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031681"
      unitRef="USD">7216000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <gnrc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031682"
      unitRef="USD">397000</gnrc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031683"
      unitRef="USD">13671000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031684"
      unitRef="USD">10974000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031685"
      unitRef="USD">3643000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i_2018-06-01_BusinessAcquisitionAxis-SelmecMember"
      decimals="-3"
      id="c56031686"
      unitRef="USD">79972000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434643">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net Sales:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;As reported&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,204,336&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,023,464&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,679,373&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Pro forma&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,206,952&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,067,737&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,755,358&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;As reported&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;252,007&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;238,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;157,808&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Pro forma&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;248,335&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;230,379&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;151,764&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;"&gt;Net income attributable to Generac Holdings Inc. per common share - diluted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;As reported&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.03&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.54&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.53&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Pro forma&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.97&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.41&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.44&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031688"
      unitRef="USD">2204336000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031689"
      unitRef="USD">2023464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031690"
      unitRef="USD">1679373000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="-3"
      id="c56031691"
      unitRef="USD">2206952000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="-3"
      id="c56031692"
      unitRef="USD">2067737000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="-3"
      id="c56031693"
      unitRef="USD">1755358000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031695"
      unitRef="USD">252007000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031696"
      unitRef="USD">238257000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031697"
      unitRef="USD">157808000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="-3"
      id="c56031698"
      unitRef="USD">248335000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="-3"
      id="c56031699"
      unitRef="USD">230379000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="-3"
      id="c56031700"
      unitRef="USD">151764000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56031702"
      unitRef="USDPerShare">4.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56031703"
      unitRef="USDPerShare">3.54</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56031704"
      unitRef="USDPerShare">2.53</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="INF"
      id="c56031705"
      unitRef="USDPerShare">3.97</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-01-01_2018-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="INF"
      id="c56031706"
      unitRef="USDPerShare">3.41</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2017-01-01_2017-12-31_StatementScenarioAxis-ProFormaMember"
      decimals="INF"
      id="c56031707"
      unitRef="USDPerShare">2.44</us-gaap:EarningsPerShareDiluted>
    <gnrc:RedeemableNoncontrollingInterestTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434644">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;4.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Redeemable Noncontrolling Interest&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; March 1, 2016, &lt;/em&gt;the Company acquired a 65% ownership interest in PR Industrial S.r.l. and its subsidiaries (Pramac). The 35% noncontrolling interest in Pramac had an acquisition date fair value of $34,253, and was recorded as a redeemable noncontrolling interest in the consolidated balance sheet, as the noncontrolling interest holder had within its control the right to require the Company to redeem its interest in Pramac. In &lt;em style="font-weight: inherit; font-style: normal;"&gt; February 2019, &lt;/em&gt;the Company amended its agreement with the noncontrolling interest holder of Pramac, extending the agreement by &lt;span style="-sec-ix-hidden:c56031712"&gt;five&lt;/span&gt; years, allowing the Company to exercise its call option rights in partial increments at certain times during the &lt;em style="font-weight: inherit; font-style: normal;"&gt;five&lt;/em&gt; year period, and providing that the noncontrolling interest holder &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; longer holds the right to put its shares to the Company until &lt;em style="font-weight: inherit; font-style: normal;"&gt; April 1, 2021.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; February 1, 2019, &lt;/em&gt;the Company acquired a 51% ownership interest in Captiva Energy Solutions, Ltd (Captiva). The 49% noncontrolling interest in Captiva has an acquisition date fair value of $3,165, and was recorded as a redeemable noncontrolling interest in the consolidated balance sheet, as the noncontrolling interest holder had within its control the right to require the Company to redeem its interest in Captiva. The noncontrolling interest holder has a put option to sell his interest to the Company any time after &lt;span style="-sec-ix-hidden:c56031719"&gt;five&lt;/span&gt; years from the date of acquisition, or earlier upon the occurrence of certain circumstances. The put option price is based on a multiple of earnings, subject to the terms of the acquisition. Further, the Company has a call option that it &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;redeem any time after &lt;span style="-sec-ix-hidden:c56031720"&gt;five&lt;/span&gt; years from the date of acquisition, or earlier upon the occurrence of certain circumstances. The call option price is based on a multiple of earnings, subject to the terms of the acquisition.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;For both transactions, the redeemable noncontrolling interest is recorded at the greater of the initial fair value, increased or decreased for the noncontrolling interests&#x2019; share of comprehensive income (loss), or the estimated redemption value, with any adjustments to the redemption value impacting retained earnings, but &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; net income. However, the redemption value adjustments are reflected in the earnings per share calculation, as detailed in Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;14,&lt;/em&gt; &#x201c;Earnings Per Share,&#x201d; to the consolidated financial statements. The following table presents the changes in the redeemable noncontrolling interest:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 33%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,004&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43,929&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33,138&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Noncontrolling interest&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,165&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(1)&lt;/em&gt;&lt;/sup&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,540&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(2)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Net income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,214&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,631&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Foreign currency translation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,764&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,109&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,529&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Redemption value adjustment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,253&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;17,970&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,227&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,004&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;43,929&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td colspan="1" style="vertical-align:top;width:96.5%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;) Represents the noncontrolling interest of Captiva Energy calculated at the date of acquisition, &lt;em style="font-weight: inherit; font-style: normal;"&gt; February 1, 2019.&lt;/em&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
     &lt;tr&gt;
      &lt;td colspan="1" style="vertical-align:top;width:96.5%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;) Represents the additional noncontrolling interest of Pramac resulting from a common control transaction between Generac Mobile Products S.r.l. and Pramac UK Limited legal entities.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
  </gnrc:RedeemableNoncontrollingInterestTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="i_2016-03-01_BusinessAcquisitionAxis-PramacMember"
      decimals="2"
      id="c56031709"
      unitRef="Pure">0.65</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners
      contextRef="i_2016-03-01_OwnershipAxis-PramacMember"
      decimals="2"
      id="c56031710"
      unitRef="Pure">0.35</us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners>
    <us-gaap:RedeemableNoncontrollingInterestEquityFairValue
      contextRef="i_2016-03-01_BusinessAcquisitionAxis-PramacMember"
      decimals="-3"
      id="c56031711"
      unitRef="USD">34253000</us-gaap:RedeemableNoncontrollingInterestEquityFairValue>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="i_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember"
      decimals="2"
      id="c56031716"
      unitRef="Pure">0.51</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners
      contextRef="i_2019-02-01_OwnershipAxis-CaptivaEnergySolutionsMember"
      decimals="2"
      id="c56031717"
      unitRef="Pure">0.49</us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners>
    <us-gaap:RedeemableNoncontrollingInterestEquityFairValue
      contextRef="i_2019-02-01_BusinessAcquisitionAxis-CaptivaEnergySolutionsMember"
      decimals="-3"
      id="c56031718"
      unitRef="USD">3165000</us-gaap:RedeemableNoncontrollingInterestEquityFairValue>
    <us-gaap:RedeemableNoncontrollingInterestTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434645">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 33%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,004&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43,929&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33,138&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Noncontrolling interest&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,165&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(1)&lt;/em&gt;&lt;/sup&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,540&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(2)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Net income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,214&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,631&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Foreign currency translation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,764&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,109&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,529&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Redemption value adjustment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,253&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;17,970&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 51%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,227&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,004&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;43,929&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:RedeemableNoncontrollingInterestTableTextBlock>
    <us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031725"
      unitRef="USD">61004000</us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests>
    <us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031727"
      unitRef="USD">43929000</us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests>
    <us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
      contextRef="i_2016-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031728"
      unitRef="USD">33138000</us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests>
    <gnrc:TemporaryEquityAcquired
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031730"
      unitRef="USD">3165000</gnrc:TemporaryEquityAcquired>
    <gnrc:TemporaryEquityAcquired
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031732"
      unitRef="USD">0</gnrc:TemporaryEquityAcquired>
    <gnrc:TemporaryEquityAcquired
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-4"
      id="c56031733"
      unitRef="USD">1540000</gnrc:TemporaryEquityAcquired>
    <us-gaap:TemporaryEquityNetIncome
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031735"
      unitRef="USD">75000</us-gaap:TemporaryEquityNetIncome>
    <us-gaap:TemporaryEquityNetIncome
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031737"
      unitRef="USD">2214000</us-gaap:TemporaryEquityNetIncome>
    <us-gaap:TemporaryEquityNetIncome
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031738"
      unitRef="USD">1631000</us-gaap:TemporaryEquityNetIncome>
    <us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031740"
      unitRef="USD">-1764000</us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments>
    <us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031742"
      unitRef="USD">-3109000</us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments>
    <us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031743"
      unitRef="USD">8529000</us-gaap:TemporaryEquityForeignCurrencyTranslationAdjustments>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031745"
      unitRef="USD">-1253000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-4"
      id="c56031747"
      unitRef="USD">17970000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031748"
      unitRef="USD">-909000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031750"
      unitRef="USD">61227000</us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests>
    <us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031752"
      unitRef="USD">61004000</us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests>
    <us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember"
      decimals="-3"
      id="c56031753"
      unitRef="USD">43929000</us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434646">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;5.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Derivative Instruments and Hedging Activities&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Commodities&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company is exposed to price fluctuations in commodities including steel, copper and aluminum; and periodically utilizes commodity derivatives to mitigate the impact of these potential price fluctuations on its financial results. These derivatives typically have maturities of less than &lt;span style="-sec-ix-hidden:c56031756"&gt;eighteen&lt;/span&gt; months. At &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; the Company had &lt;span style="-sec-ix-hidden:c56031786"&gt;&lt;span style="-sec-ix-hidden:c56031758"&gt;no&lt;/span&gt; &lt;/span&gt;commodity contracts outstanding.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Because these contracts do &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; qualify for hedge accounting, the related gains and losses are recorded in cost of goods sold in the Company&#x2019;s consolidated statements of comprehensive income. Net pre-tax gains (losses) recognized were $(174), $(874), and $377 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Foreign Currencies&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company is exposed to foreign currency exchange risk as a result of transactions denominated in currencies other than the U.S. Dollar. The Company periodically utilizes foreign currency forward purchase and sales contracts to manage the volatility associated with certain foreign currency purchases and sales in the normal course of business. Contracts typically have maturities of &lt;span style="-sec-ix-hidden:c56031765"&gt;twelve&lt;/span&gt; months or less. As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; the Company had &lt;span style="-sec-ix-hidden:c56031767"&gt;forty-three&lt;/span&gt; and &lt;span style="-sec-ix-hidden:c56031768"&gt;forty&lt;/span&gt; foreign currency contracts outstanding, respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Because these contracts do &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; qualify for hedge accounting, the related gains and losses are recorded in "other, net" in the Company&#x2019;s consolidated statements of comprehensive income. Net pre-tax gains (losses) recognized for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; were $(1,195), $(653), and $697, respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Interest Rate Swaps&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; the Company entered into &lt;span style="-sec-ix-hidden:c56031777"&gt;twenty&lt;/span&gt; interest rate swap agreements. In &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 2019, &lt;/em&gt;in conjunction with the amendment to its&#160;term loan, the Company amended those&#160;interest rate swaps to remove the LIBOR floor, which also resulted in minor reductions to the future dated swap fixed rates. The Company formally documented all relationships between interest rate hedging instruments and the related hedged items, as well as its risk-management objectives and strategies for undertaking these hedge transactions. These interest rate swap agreements qualify as cash flow hedges and therefore, the effective portions of the gains or losses are reported as a component of accumulated other comprehensive loss (AOCL) in the consolidated balance sheets. The amount of gains (losses) recognized for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; were $(13,855), $2,924, and $3,712, respectively. The cash flows of the swaps are recognized as adjustments to interest expense each period.&#160;The ineffective portions of the derivatives&#x2019; changes in fair value, if any, are immediately recognized in earnings.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Fair Value&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following table presents the fair value of the Company&#x2019;s derivatives:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;br/&gt; 201&lt;/b&gt;&lt;b&gt;9&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;br/&gt; 201&lt;/b&gt;&lt;b&gt;8&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 70%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commodity contracts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(160&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Foreign currency contracts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;31&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(117&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Interest rate swaps&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,425&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,307&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The fair value of the commodity and foreign currency contracts are included in prepaid expenses and other current assets, and the fair value of the interest rate swaps are included in other accrued liabilities and other long-term liabilities in the consolidated balance sheet as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019. &lt;/em&gt;The fair value of the commodity and foreign currency contracts are included in other accrued liabilities, and the fair value of the interest rate swaps are included in other assets in the consolidated balance sheet as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018. &lt;/em&gt;Excluding the impact of credit risk, the fair value of the derivative contracts as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; is a liability of $10,588 and an asset of $8,220, respectively, which represents the amount the Company would pay or receive upon exit of the agreements on those dates.&lt;/p&gt;
  </us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember"
      decimals="-3"
      id="c56031760"
      unitRef="USD">-174000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember"
      decimals="-3"
      id="c56031761"
      unitRef="USD">-874000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-CostOfSalesMember"
      decimals="-3"
      id="c56031762"
      unitRef="USD">377000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember"
      decimals="-3"
      id="c56031772"
      unitRef="USD">-1195000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember"
      decimals="-3"
      id="c56031773"
      unitRef="USD">-653000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_HedgingDesignationAxis-NondesignatedMember_IncomeStatementLocationAxis-OtherNetMember"
      decimals="-3"
      id="c56031774"
      unitRef="USD">697000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
      contextRef="d_2019-01-01_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"
      decimals="-3"
      id="c56031780"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
      contextRef="d_2018-01-01_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"
      decimals="-3"
      id="c56031781"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
      contextRef="d_2017-01-01_2017-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember"
      decimals="-3"
      id="c56031782"
      unitRef="USD">3712000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax>
    <gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434647">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;br/&gt; 201&lt;/b&gt;&lt;b&gt;9&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;br/&gt; 201&lt;/b&gt;&lt;b&gt;8&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 70%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commodity contracts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(160&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Foreign currency contracts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;31&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(117&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Interest rate swaps&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,425&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,307&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock>
    <us-gaap:DerivativeFairValueOfDerivativeNet
      contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-3"
      id="c56031789"
      unitRef="USD">6000</us-gaap:DerivativeFairValueOfDerivativeNet>
    <us-gaap:DerivativeFairValueOfDerivativeNet
      contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-4"
      id="c56031790"
      unitRef="USD">-160000</us-gaap:DerivativeFairValueOfDerivativeNet>
    <us-gaap:DerivativeFairValueOfDerivativeNet
      contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-3"
      id="c56031791"
      unitRef="USD">31000</us-gaap:DerivativeFairValueOfDerivativeNet>
    <us-gaap:DerivativeFairValueOfDerivativeNet
      contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-ForeignExchangeContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-3"
      id="c56031792"
      unitRef="USD">-117000</us-gaap:DerivativeFairValueOfDerivativeNet>
    <us-gaap:DerivativeFairValueOfDerivativeNet
      contextRef="i_2019-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-3"
      id="c56031793"
      unitRef="USD">-10425000</us-gaap:DerivativeFairValueOfDerivativeNet>
    <us-gaap:DerivativeFairValueOfDerivativeNet
      contextRef="i_2018-12-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member"
      decimals="-3"
      id="c56031794"
      unitRef="USD">8307000</us-gaap:DerivativeFairValueOfDerivativeNet>
    <gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56031784"
      unitRef="USD">-10588000</gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk>
    <gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56031785"
      unitRef="USD">8220000</gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk>
    <us-gaap:ComprehensiveIncomeNoteTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434648">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;6.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Accumulated Other Comprehensive Loss&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following presents a tabular disclosure of changes in AOCL during the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; net of tax:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Foreign Currency Translation Adjustments&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Defined Benefit Pension Plan&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Unrealized Gain (Loss) on Cash Flow Hedges&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Total&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Beginning Balance &#x2013; January 1, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(18,832&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,560&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(23,813&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Other comprehensive income (loss) before reclassifications&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,210&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,474&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: middle;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(1)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(13,855&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: middle;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(2)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,171&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Amounts reclassified from AOCL&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,067&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(3)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,067&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net current-period other comprehensive income (loss)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,210&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(13,855&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,104&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Ending Balance &#x2013; December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(16,622&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(8,295&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(24,917&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Foreign Currency Translation Adjustments&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Defined Benefit Pension Plan&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Unrealized Gain (Loss) on Cash Flow Hedges&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Beginning Balance &#x2013; January 1, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(12,856&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,636&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(21,198&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Other comprehensive income (loss) before reclassifications&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(5,976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(156&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(4)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,924&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(5)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,208&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Amounts reclassified from AOCL&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;593&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(6)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;593&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net current-period other comprehensive income (loss)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(5,976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;437&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,924&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(2,615&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Ending Balance &#x2013; December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(18,832&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;5,560&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(23,813&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents unrecognized actuarial gains of $1,992 net of tax effect of $(518), included in the computation of net periodic pension cost for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019. &lt;/em&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;16,&lt;/em&gt; &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements for additional information.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents unrealized losses of $(18,732), net of tax effect of $4,877 for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019.&lt;/em&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Details of reclassifications from AOCL during &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; are as follows:&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:36pt;margin-right:0pt;margin-top:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 27pt; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Amounts reclassified from AOCL&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 83%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on pension settlement&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,920&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amortization of net loss&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;843&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total before tax&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;11,763&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Income tax impact&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(2,696&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amounts reclassified from AOCL&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;9,067&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;4&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents unrecognized actuarial losses of $(211), net of tax benefit of $55, included in the computation of net periodic pension cost for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018. &lt;/em&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;16,&lt;/em&gt; &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements for additional information.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;5&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents unrealized gains of $3,951, net of tax effect of $(1,027) for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018.&lt;/em&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;6&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents actuarial losses of $802, net of tax effect of $(209), amortized to net periodic pension cost for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018. &lt;/em&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;16,&lt;/em&gt; &#x201c;Benefit Plans,&#x201d; to the consolidated financial statements for additional information.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
  </us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="d_2019-01-01_2019-12-31"
      id="BD88507D-2A8C-4398-8EAB-643C2FEB2600">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Foreign Currency Translation Adjustments&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Defined Benefit Pension Plan&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Unrealized Gain (Loss) on Cash Flow Hedges&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Total&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Beginning Balance &#x2013; January 1, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(18,832&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,560&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(23,813&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Other comprehensive income (loss) before reclassifications&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,210&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,474&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: middle;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(1)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(13,855&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: middle;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(2)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,171&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Amounts reclassified from AOCL&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,067&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(3)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,067&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net current-period other comprehensive income (loss)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,210&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(13,855&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,104&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Ending Balance &#x2013; December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(16,622&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(8,295&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(24,917&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Foreign Currency Translation Adjustments&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Defined Benefit Pension Plan&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Unrealized Gain (Loss) on Cash Flow Hedges&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Beginning Balance &#x2013; January 1, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(12,856&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,636&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(21,198&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Other comprehensive income (loss) before reclassifications&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(5,976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(156&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(4)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,924&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(5)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,208&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Amounts reclassified from AOCL&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;593&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"&gt;&lt;sup style="vertical-align:top;line-height:120%;font-size:pt"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;(6)&lt;/em&gt;&lt;/sup&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;593&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net current-period other comprehensive income (loss)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(5,976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;437&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,924&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(2,615&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Ending Balance &#x2013; December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(18,832&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;5,560&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(23,813&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031818"
      unitRef="USD">-18832000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031819"
      unitRef="USD">-10541000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-4"
      id="c56031821"
      unitRef="USD">5560000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031823"
      unitRef="USD">-23813000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-4"
      id="c56031824"
      unitRef="USD">2210000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031825"
      unitRef="USD">1474000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031827"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031829"
      unitRef="USD">-10171000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031830"
      unitRef="USD">-0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031831"
      unitRef="USD">-9067000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031833"
      unitRef="USD">-0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031835"
      unitRef="USD">-9067000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-4"
      id="c56031836"
      unitRef="USD">2210000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031837"
      unitRef="USD">10541000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031839"
      unitRef="USD">-13855000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031841"
      unitRef="USD">-1104000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031842"
      unitRef="USD">-16622000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031843"
      unitRef="USD">0</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031845"
      unitRef="USD">-8295000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031847"
      unitRef="USD">-24917000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031848"
      unitRef="USD">-12856000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031849"
      unitRef="USD">-10978000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031851"
      unitRef="USD">2636000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2017-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031853"
      unitRef="USD">-21198000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031854"
      unitRef="USD">-5976000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031855"
      unitRef="USD">-156000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031857"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031859"
      unitRef="USD">-3208000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031860"
      unitRef="USD">-0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031861"
      unitRef="USD">-593000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031863"
      unitRef="USD">-0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031865"
      unitRef="USD">-593000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031866"
      unitRef="USD">-5976000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031867"
      unitRef="USD">437000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031869"
      unitRef="USD">2924000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031871"
      unitRef="USD">-2615000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="c56031872"
      unitRef="USD">-18832000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031873"
      unitRef="USD">-10541000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-4"
      id="c56031875"
      unitRef="USD">5560000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2018-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c56031877"
      unitRef="USD">-23813000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031798"
      unitRef="USD">1992000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031799"
      unitRef="USD">-518000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031802"
      unitRef="USD">-18732000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax
      contextRef="d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031803"
      unitRef="USD">4877000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax>
    <us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434651">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 27pt; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Amounts reclassified from AOCL&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 83%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on pension settlement&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,920&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amortization of net loss&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;843&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total before tax&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;11,763&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Income tax impact&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(2,696&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amounts reclassified from AOCL&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;9,067&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-4"
      id="c56031878"
      unitRef="USD">10920000</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax
      contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031879"
      unitRef="USD">-843000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031880"
      unitRef="USD">11763000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031881"
      unitRef="USD">-2696000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031882"
      unitRef="USD">9067000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031808"
      unitRef="USD">-211000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031809"
      unitRef="USD">55000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031812"
      unitRef="USD">3951000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember"
      decimals="-3"
      id="c56031813"
      unitRef="USD">-1027000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031815"
      unitRef="USD">802000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax>
    <us-gaap:ReclassificationFromAociCurrentPeriodTax
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember"
      decimals="-3"
      id="c56031816"
      unitRef="USD">-209000</us-gaap:ReclassificationFromAociCurrentPeriodTax>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434652">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;7.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Segment Reporting&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company has &lt;span style="-sec-ix-hidden:c56031884"&gt;two&lt;/span&gt; reportable segments for financial reporting purposes &#x2013; Domestic and International. The Domestic segment includes the legacy Generac business, (excluding its traditional Latin American export operations), and the acquisitions that are based in the U.S. and Canada, all of which have revenues that are substantially derived from the U.S. and Canada. The International segment includes the legacy Generac business's Latin American export operations,&#160;and the Ottomotores, Tower Light, Pramac, Motortech and Selmec acquisitions, all of which have revenues that are substantially derived from outside the U.S and Canada. Both reportable segments design and manufacture a wide range of power generation equipment, energy technology solutions, and other power products. The Company has multiple operating segments, which it aggregates into the &lt;em style="font-weight: inherit; font-style: normal;"&gt;two&lt;/em&gt; reportable segments, based on materially similar economic characteristics, products, production processes, classes of customers, distribution methods and regional considerations.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company's product offerings consist primarily of power generation equipment, energy technology solutions, and other power products geared for varying end customer uses. Residential products and commercial &amp;amp; industrial (C&amp;amp;I) products are each a similar class of products based on similar power output and end customer. The breakout of net sales between residential, C&amp;amp;I, and other products by reportable segment is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Net Sales by Segment&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Product Classes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,086,019&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;57,704&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,143,723&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;513,482&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;358,113&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;871,595&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;143,397&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;45,621&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;189,018&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,742,898&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;461,438&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,204,336&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Product Classes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;980,707&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;62,032&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,042,739&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;461,415&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;358,855&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;820,270&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;124,398&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;36,057&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;160,455&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,566,520&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;456,944&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,023,464&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Product Classes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;796,237&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;74,253&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;870,490&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;372,635&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;311,718&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;684,353&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;102,806&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;21,724&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;124,530&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,271,678&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;407,695&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,679,373&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;Residential products consist primarily of automatic home standby generators ranging in output from &lt;em style="font-weight: inherit; font-style: normal;"&gt;6kW&lt;/em&gt; to &lt;em style="font-weight: inherit; font-style: normal;"&gt;60kW,&lt;/em&gt; portable generators, energy storage and monitoring solutions, and other outdoor power equipment. These products are sold through independent residential dealers, national and regional retailers, e-commerce merchants, electrical/HVAC/solar wholesalers, solar installers, and outdoor power equipment dealers. The residential products revenue consists of the sale of the product to our distribution partners, which in turn sell or rent the product to the end consumer, including installation and maintenance services. In some cases, residential products are sold direct to the end consumer. Substantially all of the residential products revenues are transferred to the customer at a point in time.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;C&amp;amp;I products consist of larger output stationary generators used in C&amp;amp;I applications and fueled by diesel, natural gas, liquid propane and bi-fuel, with power outputs ranging from &lt;em style="font-weight: inherit; font-style: normal;"&gt;10kW&lt;/em&gt; up to &lt;em style="font-weight: inherit; font-style: normal;"&gt;3,250kW.&lt;/em&gt; Also included in C&amp;amp;I products are mobile generators, light towers, mobile heaters and mobile pumps. These products are sold through industrial distributors and dealers, equipment rental companies and equipment distributors. The C&amp;amp;I products revenue consists of the sale of the product to our distribution partners, which in turn sell or rent the product to the end customer, including installation and maintenance services. In some cases, C&amp;amp;I products are sold direct to the end customer. Substantially all of the C&amp;amp;I products revenues are transferred to the customer at a point in time.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Other products consist primarily of aftermarket service parts and product accessories sold to our dealers,&#160;the amortization of extended warranty deferred revenue, and remote monitoring subscription revenue. The aftermarket service parts and product accessories are generally transferred to the customer at a point in time, while the extended warranty and subscription revenue are&#160;recognized over the life of the contract.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Management evaluates the performance of its segments based primarily on Adjusted EBITDA, which is reconciled to Income before provision for income taxes below. The computation of Adjusted EBITDA is based on the definition that is contained in the Company&#x2019;s credit agreements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Adjusted EBITDA&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;428,667&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;388,495&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;282,450&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;25,448&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;36,057&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;34,850&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total adjusted EBITDA&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;454,115&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;424,552&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;317,300&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest expense&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(41,544&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(40,956&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(42,667&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Depreciation and amortization&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(60,767&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(47,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(51,988&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-cash write-down and other adjustments (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(240&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,532&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,923&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-cash share-based compensation expense (2)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(16,694&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(14,563&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,205&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on extinguishment of debt (3)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(926&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,332&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on pension settlement (4)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,920&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Transaction costs and credit facility fees (5)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,724&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,883&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,145&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Business optimization expenses (6)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,572&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(952&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,912&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;879&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(850&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(761&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Income before provision for income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;319,607&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;311,076&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;203,699&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Includes certain foreign currency and purchase accounting related adjustments, gains/losses on disposal of assets and unrealized mark-to-market adjustments on commodity contracts.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;4&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents pre-tax settlement charges related to the termination of the Company&#x2019;s domestic pension plan in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;5&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity issuance, debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;6&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Represents severance and other non-recurring restructuring charges related to the consolidation of certain of our facilities.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; management has determined that the Latin American export operations of the legacy Generac business (GPS LATAM) should have been included in the International reportable segment beginning in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018.&lt;/em&gt; Previously, GPS LATAM was reported in the Domestic segment, in amounts that were &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; material. This change is to reflect the current leadership structure as well as how the Company makes financial decisions and allocates resources for the overall Latin America reporting unit. To reflect this change, management has chosen to correct the net sales and adjusted EBITDA by segment included in this Form &lt;em style="font-weight: inherit; font-style: normal;"&gt;10&lt;/em&gt;-K for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017.&lt;/em&gt; The following table details the amounts adjusted from the Domestic segment to the International segment.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 43%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential Products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,129&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,924&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,888&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr class="GFJY4-DCU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition" style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,724&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,651&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,940&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;998&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,230&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total Net Sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,851&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;31,828&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Adjusted EBITDA&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;984&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;190&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,840&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;There was &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; impact to the Company&#x2019;s reporting of total assets, depreciation and amortization, and capital expenditures by segment as a result of this&#160;change.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;The following tables summarize additional financial information by reportable segment:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Assets&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,123,251&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,868,554&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,612,607&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;542,418&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;557,760&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;413,358&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,665,669&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,426,314&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,025,965&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Depreciation and Amortization&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,145&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;35,586&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;14,764&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;11,822&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;14,026&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;60,909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;47,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;51,988&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Capital Expenditures&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;36,007&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;38,242&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,258&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;24,795&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,359&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,003&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;60,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;47,601&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;33,261&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s sales in the United States represent approximately 75%, 74%, and 74% of total sales for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively. Approximately 80% of the Company&#x2019;s identifiable long-lived assets are located in the United States as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018.&lt;/em&gt;&lt;/p&gt;
  </us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="d_2019-01-01_2019-12-31"
      id="A65383A0-81FE-4F16-82DB-F10635C7059D">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Net Sales by Segment&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Product Classes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,086,019&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;57,704&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,143,723&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;513,482&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;358,113&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;871,595&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;143,397&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;45,621&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;189,018&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,742,898&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;461,438&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,204,336&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Product Classes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;980,707&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;62,032&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,042,739&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;461,415&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;358,855&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;820,270&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;124,398&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;36,057&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;160,455&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,566,520&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;456,944&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,023,464&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Product Classes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;796,237&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;74,253&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;870,490&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;372,635&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;311,718&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;684,353&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;102,806&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;21,724&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;124,530&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,271,678&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;407,695&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,679,373&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031918"
      unitRef="USD">1086019000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031919"
      unitRef="USD">57704000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember"
      decimals="-3"
      id="c56031920"
      unitRef="USD">1143723000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031921"
      unitRef="USD">513482000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031922"
      unitRef="USD">358113000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"
      decimals="-3"
      id="c56031923"
      unitRef="USD">871595000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031924"
      unitRef="USD">143397000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031925"
      unitRef="USD">45621000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember"
      decimals="-3"
      id="c56031926"
      unitRef="USD">189018000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031927"
      unitRef="USD">1742898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031928"
      unitRef="USD">461438000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031929"
      unitRef="USD">2204336000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031930"
      unitRef="USD">980707000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031931"
      unitRef="USD">62032000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember"
      decimals="-3"
      id="c56031932"
      unitRef="USD">1042739000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031933"
      unitRef="USD">461415000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031934"
      unitRef="USD">358855000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"
      decimals="-4"
      id="c56031935"
      unitRef="USD">820270000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031936"
      unitRef="USD">124398000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031937"
      unitRef="USD">36057000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember"
      decimals="-3"
      id="c56031938"
      unitRef="USD">160455000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-4"
      id="c56031939"
      unitRef="USD">1566520000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031940"
      unitRef="USD">456944000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031941"
      unitRef="USD">2023464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031942"
      unitRef="USD">796237000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031943"
      unitRef="USD">74253000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-ResidentialPowerProductsMember"
      decimals="-4"
      id="c56031944"
      unitRef="USD">870490000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031945"
      unitRef="USD">372635000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031946"
      unitRef="USD">311718000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"
      decimals="-3"
      id="c56031947"
      unitRef="USD">684353000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031948"
      unitRef="USD">102806000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031949"
      unitRef="USD">21724000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ProductOrServiceAxis-OtherProductsAndServicesMember"
      decimals="-4"
      id="c56031950"
      unitRef="USD">124530000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031951"
      unitRef="USD">1271678000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031952"
      unitRef="USD">407695000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031953"
      unitRef="USD">1679373000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="d_2019-01-01_2019-12-31"
      id="A1CA03B4-EC0B-4ED5-B8E7-C938BC48E000">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Adjusted EBITDA&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;428,667&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;388,495&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;282,450&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;25,448&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;36,057&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;34,850&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total adjusted EBITDA&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;454,115&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;424,552&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;317,300&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest expense&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(41,544&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(40,956&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(42,667&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Depreciation and amortization&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(60,767&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(47,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(51,988&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-cash write-down and other adjustments (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(240&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,532&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,923&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-cash share-based compensation expense (2)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(16,694&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(14,563&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,205&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on extinguishment of debt (3)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(926&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,332&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on pension settlement (4)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(10,920&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Transaction costs and credit facility fees (5)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,724&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,883&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,145&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Business optimization expenses (6)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,572&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(952&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,912&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;879&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(850&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(761&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Income before provision for income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;319,607&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;311,076&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;203,699&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Assets&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,123,251&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,868,554&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,612,607&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;542,418&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;557,760&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;413,358&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,665,669&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,426,314&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2,025,965&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Depreciation and Amortization&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,145&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;35,586&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;14,764&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;11,822&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;14,026&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;60,909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;47,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;51,988&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Capital Expenditures&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;36,007&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;38,242&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,258&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;24,795&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,359&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,003&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;60,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;47,601&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;33,261&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <gnrc:AdjustedEBITDA
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031954"
      unitRef="USD">428667000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56031955"
      unitRef="USD">388495000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-4"
      id="c56031956"
      unitRef="USD">282450000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031957"
      unitRef="USD">25448000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56031958"
      unitRef="USD">36057000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-4"
      id="c56031959"
      unitRef="USD">34850000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031960"
      unitRef="USD">454115000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031961"
      unitRef="USD">424552000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-5"
      id="c56031962"
      unitRef="USD">317300000</gnrc:AdjustedEBITDA>
    <us-gaap:InterestExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031963"
      unitRef="USD">41544000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031964"
      unitRef="USD">40956000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031965"
      unitRef="USD">42667000</us-gaap:InterestExpense>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031966"
      unitRef="USD">60767000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031967"
      unitRef="USD">47408000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031968"
      unitRef="USD">51988000</us-gaap:DepreciationDepletionAndAmortization>
    <gnrc:NoncashWritedownAndOtherAdjustments
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031969"
      unitRef="USD">240000</gnrc:NoncashWritedownAndOtherAdjustments>
    <gnrc:NoncashWritedownAndOtherAdjustments
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031970"
      unitRef="USD">3532000</gnrc:NoncashWritedownAndOtherAdjustments>
    <gnrc:NoncashWritedownAndOtherAdjustments
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031971"
      unitRef="USD">2923000</gnrc:NoncashWritedownAndOtherAdjustments>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031972"
      unitRef="USD">16694000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031973"
      unitRef="USD">14563000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031974"
      unitRef="USD">10205000</us-gaap:ShareBasedCompensation>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031975"
      unitRef="USD">-926000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031976"
      unitRef="USD">-1332000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031977"
      unitRef="USD">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56031978"
      unitRef="USD">10920000</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031979"
      unitRef="USD">-0</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031980"
      unitRef="USD">-0</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <gnrc:TransactionCostsAndCredityFaciltyFees
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031981"
      unitRef="USD">2724000</gnrc:TransactionCostsAndCredityFaciltyFees>
    <gnrc:TransactionCostsAndCredityFaciltyFees
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031982"
      unitRef="USD">3883000</gnrc:TransactionCostsAndCredityFaciltyFees>
    <gnrc:TransactionCostsAndCredityFaciltyFees
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031983"
      unitRef="USD">2145000</gnrc:TransactionCostsAndCredityFaciltyFees>
    <gnrc:BusinessOptimizationExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031984"
      unitRef="USD">1572000</gnrc:BusinessOptimizationExpense>
    <gnrc:BusinessOptimizationExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031985"
      unitRef="USD">952000</gnrc:BusinessOptimizationExpense>
    <gnrc:BusinessOptimizationExpense
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031986"
      unitRef="USD">2912000</gnrc:BusinessOptimizationExpense>
    <gnrc:Other
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031987"
      unitRef="USD">-879000</gnrc:Other>
    <gnrc:Other
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56031988"
      unitRef="USD">850000</gnrc:Other>
    <gnrc:Other
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031989"
      unitRef="USD">761000</gnrc:Other>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56031990"
      unitRef="USD">319607000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56031991"
      unitRef="USD">311076000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56031992"
      unitRef="USD">203699000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434657">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 43%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Residential Products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,129&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,924&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,888&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr class="GFJY4-DCU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition" style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commercial &amp;amp; industrial products&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,724&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,651&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,940&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;998&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,230&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total Net Sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,851&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;31,828&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Adjusted EBITDA&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;984&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;190&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,840&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember"
      decimals="-3"
      id="c56031993"
      unitRef="USD">7129000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember"
      decimals="-3"
      id="c56031994"
      unitRef="USD">9924000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-ResidentialPowerProductsMember"
      decimals="-3"
      id="c56031995"
      unitRef="USD">18888000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"
      decimals="-3"
      id="c56031996"
      unitRef="USD">5724000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"
      decimals="-3"
      id="c56031997"
      unitRef="USD">2651000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-CommercialAndIndustrialPowerProductsMember"
      decimals="-4"
      id="c56031998"
      unitRef="USD">12940000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember"
      decimals="-3"
      id="c56031999"
      unitRef="USD">998000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember"
      decimals="-4"
      id="c56032000"
      unitRef="USD">1230000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember_ProductOrServiceAxis-OtherProductsAndServicesMember"
      decimals="-3"
      id="c56032001"
      unitRef="USD">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"
      decimals="-3"
      id="c56032002"
      unitRef="USD">13851000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"
      decimals="-3"
      id="c56032003"
      unitRef="USD">13805000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"
      decimals="-3"
      id="c56032004"
      unitRef="USD">31828000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <gnrc:AdjustedEBITDA
      contextRef="d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"
      decimals="-3"
      id="c56032005"
      unitRef="USD">984000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2018-01-01_2018-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"
      decimals="-4"
      id="c56032006"
      unitRef="USD">190000</gnrc:AdjustedEBITDA>
    <gnrc:AdjustedEBITDA
      contextRef="d_2017-01-01_2017-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember"
      decimals="-4"
      id="c56032007"
      unitRef="USD">7840000</gnrc:AdjustedEBITDA>
    <us-gaap:Assets
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032008"
      unitRef="USD">2123251000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032009"
      unitRef="USD">1868554000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032010"
      unitRef="USD">1612607000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032011"
      unitRef="USD">542418000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-4"
      id="c56032012"
      unitRef="USD">557760000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032013"
      unitRef="USD">413358000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032014"
      unitRef="USD">2665669000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032015"
      unitRef="USD">2426314000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032016"
      unitRef="USD">2025965000</us-gaap:Assets>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032017"
      unitRef="USD">46145000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032018"
      unitRef="USD">35586000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032019"
      unitRef="USD">37962000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032020"
      unitRef="USD">14764000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032021"
      unitRef="USD">11822000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032022"
      unitRef="USD">14026000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032023"
      unitRef="USD">60909000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032024"
      unitRef="USD">47408000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032025"
      unitRef="USD">51988000</gnrc:DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032026"
      unitRef="USD">36007000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032027"
      unitRef="USD">38242000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032028"
      unitRef="USD">29258000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032029"
      unitRef="USD">24795000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032030"
      unitRef="USD">9359000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2017-01-01_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032031"
      unitRef="USD">4003000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032032"
      unitRef="USD">60802000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032033"
      unitRef="USD">47601000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032034"
      unitRef="USD">33261000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"
      decimals="2"
      id="c56031908"
      unitRef="Pure">0.75</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"
      decimals="2"
      id="c56031909"
      unitRef="Pure">0.74</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2017-01-01_2017-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"
      decimals="2"
      id="c56031910"
      unitRef="Pure">0.74</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2018-01-01_2018-12-31_ConcentrationRiskByBenchmarkAxis-NetAssetsGeographicAreaMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US"
      decimals="1"
      id="c56031913"
      unitRef="Pure">0.80</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434661">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;8.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Balance Sheet Details&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Inventories consist of the following:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Raw material&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;328,021&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;348,980&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Work-in-process&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,387&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,971&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finished goods&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;183,616&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;188,799&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;522,024&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;544,750&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; inventories totaling $18,684 and $8,488, respectively, were on consignment at customer locations.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;Property and equipment consists of the following:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Land and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,252&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,975&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Buildings and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;177,079&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;163,161&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;117,114&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;103,726&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Dies and tools&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;22,040&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;28,198&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vehicles&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,955&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,070&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Office equipment and systems&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;99,124&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;82,638&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,293&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,137&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Construction in progress&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;36,299&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;26,543&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Gross property and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;478,156&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;424,448&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accumulated depreciation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(161,180&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(145,519&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;316,976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;278,929&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Total property and equipment included finance leases of $20,158 at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;primarily made up of buildings and improvements. Amortization of finance lease right of use assets&#160;is recorded within depreciation expense in the consolidated statements of comprehensive income. The initial measurement of new finance lease right of use assets&#160;is accounted for as a non-cash item in the consolidated statement of cash flows. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; &#x201c;Leases,&#x201d; for further information regarding the Company&#x2019;s accounting for leases under ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;842,&lt;/em&gt; &lt;i&gt;Leases,&lt;/i&gt; in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt;&lt;/p&gt;
  </us-gaap:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434662">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Raw material&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;328,021&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;348,980&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Work-in-process&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,387&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,971&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finished goods&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;183,616&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;188,799&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;522,024&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;544,750&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032044"
      unitRef="USD">328021000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032045"
      unitRef="USD">348980000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032046"
      unitRef="USD">10387000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032047"
      unitRef="USD">6971000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032048"
      unitRef="USD">183616000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032049"
      unitRef="USD">188799000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032050"
      unitRef="USD">522024000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032051"
      unitRef="USD">544750000</us-gaap:InventoryNet>
    <us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032038"
      unitRef="USD">18684000</us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment>
    <us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032039"
      unitRef="USD">8488000</us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434663">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Land and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,252&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,975&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Buildings and improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;177,079&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;163,161&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;117,114&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;103,726&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Dies and tools&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;22,040&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;28,198&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vehicles&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,955&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,070&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Office equipment and systems&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;99,124&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;82,638&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,293&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,137&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Construction in progress&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;36,299&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;26,543&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Gross property and equipment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;478,156&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;424,448&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accumulated depreciation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(161,180&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(145,519&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;316,976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;278,929&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember"
      decimals="-3"
      id="c56032052"
      unitRef="USD">18252000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LandAndLandImprovementsMember"
      decimals="-3"
      id="c56032053"
      unitRef="USD">15975000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember"
      decimals="-3"
      id="c56032054"
      unitRef="USD">177079000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingAndBuildingImprovementsMember"
      decimals="-3"
      id="c56032055"
      unitRef="USD">163161000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember"
      decimals="-3"
      id="c56032056"
      unitRef="USD">117114000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember"
      decimals="-3"
      id="c56032057"
      unitRef="USD">103726000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember"
      decimals="-4"
      id="c56032058"
      unitRef="USD">22040000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-DiesAndToolsMember"
      decimals="-3"
      id="c56032059"
      unitRef="USD">28198000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember"
      decimals="-3"
      id="c56032060"
      unitRef="USD">3955000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-VehiclesMember"
      decimals="-4"
      id="c56032061"
      unitRef="USD">2070000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember"
      decimals="-3"
      id="c56032062"
      unitRef="USD">99124000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-OfficeEquipmentMember"
      decimals="-3"
      id="c56032063"
      unitRef="USD">82638000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember"
      decimals="-3"
      id="c56032064"
      unitRef="USD">4293000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember"
      decimals="-3"
      id="c56032065"
      unitRef="USD">2137000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember"
      decimals="-3"
      id="c56032066"
      unitRef="USD">36299000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31_PropertyPlantAndEquipmentByTypeAxis-ConstructionInProgressMember"
      decimals="-3"
      id="c56032067"
      unitRef="USD">26543000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032068"
      unitRef="USD">478156000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032069"
      unitRef="USD">424448000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032070"
      unitRef="USD">161180000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032071"
      unitRef="USD">145519000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032072"
      unitRef="USD">316976000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032073"
      unitRef="USD">278929000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:CapitalLeasesBalanceSheetAssetsByMajorClassNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032040"
      unitRef="USD">20158000</us-gaap:CapitalLeasesBalanceSheetAssetsByMajorClassNet>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434664">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;9.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Goodwill and Intangible Assets&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The changes in the carrying amount of goodwill by reportable segment for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;621,451&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;100,072&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;721,523&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Acquisitions of businesses, net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,788&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,788&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Foreign currency translation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,656&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,656&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;621,451&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;143,204&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;764,655&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Acquisitions of businesses, net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37,758&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,078&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40,836&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Foreign currency translation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(207&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(207&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;659,209&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;146,075&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;805,284&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;3,&lt;/em&gt; &#x201c;Acquisitions,&#x201d; to the consolidated financial statements for further information regarding the Company&#x2019;s acquisitions.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The details of the gross goodwill applicable to each reportable segment at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Impairment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Impairment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 28%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,162,402&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(503,193&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;659,209&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,124,644&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(503,193&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;621,451&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;150,686&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(4,611&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;146,075&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;147,815&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(4,611&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;143,204&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,313,088&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(507,804&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;805,284&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,272,459&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(507,804&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;764,655&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following table summarizes intangible assets by major category as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018:&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Weighted Average&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Amortization Years&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Amortization&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net Book Value&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Amortization&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net Book Value&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 30%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finite-lived intangible assets:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Tradenames&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;56,669&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(36,613&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20,056&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;56,378&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(32,416&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Customer lists&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;369,932&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(314,380&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;55,552&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;368,343&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(307,149&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,194&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Patents&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;13&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;131,086&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(110,554&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20,532&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;131,030&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(101,060&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,970&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Developed technology&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;82,886&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(17,872&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;65,014&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,169&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(12,058&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,111&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Software&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Non-compete/other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;12,063&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,804&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;8,259&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,829&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,897&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,932&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Total finite-lived intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;653,682&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(484,269&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;169,413&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;573,795&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(455,626&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;118,169&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Indefinite-lived tradenames&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;782,003&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(484,269&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;297,734&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;702,116&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(455,626&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;246,490&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Amortization of intangible assets was $28,644, $22,112 and $28,861 in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively. Excluding the impact of any future acquisitions, the Company estimates amortization expense for the next &lt;em style="font-weight: inherit; font-style: normal;"&gt;five&lt;/em&gt; years will be as follows: &lt;em style="font-weight: inherit; font-style: normal;"&gt;2020&lt;/em&gt; -&#160;&lt;span style="-sec-ix-hidden:c56032088"&gt;$31,237;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2021&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56032090"&gt;$29,473;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2022&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56032092"&gt;$22,226;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2023&lt;/em&gt; - &lt;span style="-sec-ix-hidden:c56032094"&gt;$18,344;&lt;/span&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2024&lt;/em&gt; - $16,156.&lt;/p&gt;
  </us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="d_2019-01-01_2019-12-31"
      id="c4F0D860B-18E3-4993-82A3-D8907630BF54">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Domestic&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;International&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;621,451&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;100,072&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;721,523&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Acquisitions of businesses, net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,788&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,788&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Foreign currency translation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,656&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,656&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;621,451&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;143,204&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;764,655&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Acquisitions of businesses, net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37,758&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,078&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40,836&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Foreign currency translation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(207&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(207&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;659,209&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;146,075&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;805,284&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Impairment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Impairment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 28%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,162,402&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(503,193&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;659,209&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,124,644&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(503,193&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;621,451&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;150,686&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(4,611&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;146,075&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;147,815&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(4,611&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;143,204&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,313,088&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(507,804&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;805,284&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,272,459&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(507,804&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;764,655&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032097"
      unitRef="USD">621451000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2017-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032098"
      unitRef="USD">100072000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032099"
      unitRef="USD">721523000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032106"
      unitRef="USD">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032107"
      unitRef="USD">46788000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032108"
      unitRef="USD">46788000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032115"
      unitRef="USD">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="d_2018-01-01_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032116"
      unitRef="USD">-3656000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032117"
      unitRef="USD">-3656000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032124"
      unitRef="USD">621451000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032125"
      unitRef="USD">143204000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032126"
      unitRef="USD">764655000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032133"
      unitRef="USD">37758000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032134"
      unitRef="USD">3078000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032135"
      unitRef="USD">40836000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032142"
      unitRef="USD">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032143"
      unitRef="USD">-207000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032144"
      unitRef="USD">-207000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032151"
      unitRef="USD">659209000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032152"
      unitRef="USD">146075000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032153"
      unitRef="USD">805284000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032163"
      unitRef="USD">1162402000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032164"
      unitRef="USD">503193000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032165"
      unitRef="USD">659209000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032166"
      unitRef="USD">1124644000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032167"
      unitRef="USD">503193000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-DomesticMember"
      decimals="-3"
      id="c56032168"
      unitRef="USD">621451000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032172"
      unitRef="USD">150686000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032173"
      unitRef="USD">4611000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032174"
      unitRef="USD">146075000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032175"
      unitRef="USD">147815000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032176"
      unitRef="USD">4611000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31_StatementBusinessSegmentsAxis-InternationalMember"
      decimals="-3"
      id="c56032177"
      unitRef="USD">143204000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032181"
      unitRef="USD">1313088000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032182"
      unitRef="USD">507804000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032183"
      unitRef="USD">805284000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032184"
      unitRef="USD">1272459000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032185"
      unitRef="USD">507804000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032186"
      unitRef="USD">764655000</us-gaap:Goodwill>
    <gnrc:ScheduleOfIntangibleAssetsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434667">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Weighted Average&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Amortization Years&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Amortization&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net Book Value&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Accumulated Amortization&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;Net Book Value&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 30%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finite-lived intangible assets:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Tradenames&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;56,669&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(36,613&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20,056&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;56,378&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(32,416&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Customer lists&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;369,932&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(314,380&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;55,552&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;368,343&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(307,149&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,194&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Patents&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;13&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;131,086&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(110,554&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20,532&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;131,030&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(101,060&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,970&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Developed technology&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;82,886&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(17,872&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;65,014&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,169&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(12,058&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,111&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Software&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,046&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Non-compete/other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;12,063&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,804&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;8,259&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,829&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,897&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,932&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Total finite-lived intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;653,682&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(484,269&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;169,413&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;573,795&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(455,626&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;118,169&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Indefinite-lived tradenames&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;128,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;782,003&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(484,269&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;297,734&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;702,116&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(455,626&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;246,490&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ScheduleOfIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      id="c56032188">P9Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      decimals="-3"
      id="c56032189"
      unitRef="USD">56669000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      decimals="-3"
      id="c56032190"
      unitRef="USD">36613000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      decimals="-3"
      id="c56032191"
      unitRef="USD">20056000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      decimals="-3"
      id="c56032192"
      unitRef="USD">56378000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      decimals="-3"
      id="c56032193"
      unitRef="USD">32416000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-TradeNamesMember"
      decimals="-3"
      id="c56032194"
      unitRef="USD">23962000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      id="c56032195">P12Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      decimals="-3"
      id="c56032196"
      unitRef="USD">369932000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      decimals="-4"
      id="c56032197"
      unitRef="USD">314380000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      decimals="-3"
      id="c56032198"
      unitRef="USD">55552000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      decimals="-3"
      id="c56032199"
      unitRef="USD">368343000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      decimals="-3"
      id="c56032200"
      unitRef="USD">307149000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember"
      decimals="-3"
      id="c56032201"
      unitRef="USD">61194000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      id="c56032202">P13Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      decimals="-3"
      id="c56032203"
      unitRef="USD">131086000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      decimals="-3"
      id="c56032204"
      unitRef="USD">110554000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      decimals="-3"
      id="c56032205"
      unitRef="USD">20532000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      decimals="-4"
      id="c56032206"
      unitRef="USD">131030000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      decimals="-4"
      id="c56032207"
      unitRef="USD">101060000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember"
      decimals="-4"
      id="c56032208"
      unitRef="USD">29970000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      id="c56032209">P9Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      decimals="-3"
      id="c56032210"
      unitRef="USD">82886000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      decimals="-3"
      id="c56032211"
      unitRef="USD">17872000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      decimals="-3"
      id="c56032212"
      unitRef="USD">65014000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      decimals="-3"
      id="c56032213"
      unitRef="USD">13169000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      decimals="-3"
      id="c56032214"
      unitRef="USD">12058000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-DevelopedTechnologyRightsMember"
      decimals="-3"
      id="c56032215"
      unitRef="USD">1111000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"
      decimals="-3"
      id="c56032217"
      unitRef="USD">1046000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"
      decimals="-3"
      id="c56032218"
      unitRef="USD">1046000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"
      decimals="-3"
      id="c56032219"
      unitRef="USD">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"
      decimals="-3"
      id="c56032220"
      unitRef="USD">1046000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"
      decimals="-3"
      id="c56032221"
      unitRef="USD">1046000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-ComputerSoftwareIntangibleAssetMember"
      decimals="-3"
      id="c56032222"
      unitRef="USD">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2019-01-01_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      id="c56032223">P4Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      decimals="-3"
      id="c56032224"
      unitRef="USD">12063000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      decimals="-3"
      id="c56032225"
      unitRef="USD">3804000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      decimals="-3"
      id="c56032226"
      unitRef="USD">8259000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      decimals="-3"
      id="c56032227"
      unitRef="USD">3829000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      decimals="-3"
      id="c56032228"
      unitRef="USD">1897000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember"
      decimals="-3"
      id="c56032229"
      unitRef="USD">1932000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032231"
      unitRef="USD">653682000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032232"
      unitRef="USD">484269000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032233"
      unitRef="USD">169413000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032234"
      unitRef="USD">573795000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032235"
      unitRef="USD">455626000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032236"
      unitRef="USD">118169000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IndefiniteLivedTradeNames
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032238"
      unitRef="USD">128321000</us-gaap:IndefiniteLivedTradeNames>
    <us-gaap:IndefiniteLivedTradeNames
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032240"
      unitRef="USD">128321000</us-gaap:IndefiniteLivedTradeNames>
    <us-gaap:IndefiniteLivedTradeNames
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032241"
      unitRef="USD">128321000</us-gaap:IndefiniteLivedTradeNames>
    <us-gaap:IndefiniteLivedTradeNames
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032243"
      unitRef="USD">128321000</us-gaap:IndefiniteLivedTradeNames>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032245"
      unitRef="USD">782003000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032246"
      unitRef="USD">484269000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032247"
      unitRef="USD">297734000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032248"
      unitRef="USD">702116000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032249"
      unitRef="USD">455626000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032250"
      unitRef="USD">246490000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032080"
      unitRef="USD">28644000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032081"
      unitRef="USD">22112000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032082"
      unitRef="USD">28861000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032096"
      unitRef="USD">16156000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:LeasesOfLesseeDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434668">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;10.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Leases&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company determines if an arrangement is or contains a lease at contract inception. The Company recognizes a right of use (&#x201c;ROU&#x201d;) asset and lease liability at the lease commencement date based on the present value of the lease payments over the lease term. As the Company&#x2019;s leases generally do &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; provide an implicit rate, the incremental borrowing rate is used to determine the present value of lease payments. The incremental borrowing rate is a collateralized rate determined based on the lease term, the Company&#x2019;s credit rating, and other market information available at the commencement date. The ROU asset also includes any lease payments made prior to the commencement date and is reduced by any lease incentives. The lease term &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for operating leases is recognized on a straight-line basis over the lease term, while lease expense for finance leases is recognized as depreciation and interest expense using the effective interest method. The Company&#x2019;s variable lease expense generally consists of property tax and insurance payments that are variable in nature, however, these amounts are immaterial to the consolidated financial statements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company has lease agreements with both lease and nonlease components, which it elected to account for as a single lease component. However, the Company did &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; elect to apply the recognition exception for short-term leases. The Company is applying these elections to all asset classes.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company leases certain manufacturing facilities, distribution centers, office space, warehouses, automobiles, machinery and computer equipment globally under both finance and operating leases. The Company&#x2019;s leases have remaining lease terms of up to 20 years, of which certain leases, primarily within the buildings and improvements asset class, include options to extend the leases for up to 10 additional years. Further, the Company leases certain buildings from a noncontrolling interest holder, which the Company has determined to be arms&#x2019; length transactions.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company is a lessor of &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt; building that it leases to a &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt; party. The lease income related to this arrangement is &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; material to the consolidated financial statements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;The Company records its operating lease cost and amortization of finance lease ROU assets within cost of goods sold or operating expenses in the consolidated statements of comprehensive income depending on the cost center of the underlying asset. The Company records its finance lease interest cost within interest expense in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;The components of total lease cost consist of the following:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Twelve Months Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating lease cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,647&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finance lease cost:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Amortization of ROU assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,531&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Interest on lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,227&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total lease cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;14,405&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;Prior to the adoption of ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;842,&lt;/em&gt; lease expense consisted of payments on operating leases. Total rent expense related to operating leases for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; was approximately $10,739 and $10,845, respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; January 1, 2019, &lt;/em&gt;the date of the adoption of ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;02,&lt;/em&gt; the Company recognized ROU assets and lease liabilities related to operating leases of $42,024 and $42,056, respectively, and there was no cumulative effect adjustment made to retained earnings. Supplemental balance sheet information related to the Company&#x2019;s leases is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating lease ROU assets (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;35,950&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating lease liabilities - current (2)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,231&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating lease liabilities - noncurrent (3)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;29,778&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;"&gt;Total operating lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;37,009&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finance Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance lease ROU assets, gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,142&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Accumulated depreciation - finance lease ROU assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,079&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Finance lease ROU assets, net (4)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;26,063&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance lease liabilities - current (5)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,830&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance lease liabilities - noncurrent (6)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;24,132&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;"&gt;Total finance lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;25,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Recorded in the operating lease and other assets line within the consolidated balance sheets&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Recorded in the other accrued liabilities line within the consolidated balance sheets&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Recorded in the operating lease and other long-term liabilities line within the consolidated balance sheets&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;4&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Recorded in the property and equipment, net line within the consolidated balance sheets&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;5&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Recorded in the current portion of long-term borrowings and finance lease obligations line within the consolidated balance sheets&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;6&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Recorded in the long-term borrowings and finance lease obligations line within the consolidated balance sheets&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;Supplemental cash flow information related to the Company&#x2019;s leases is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Three Months Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;Twelve Months Ended December 31, 2019&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating cash flows from operating leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,174&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,125&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating cash flows from finance leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;471&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,864&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Financing cash flows from finance leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,237&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;ROU assets obtained in exchange for lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;239&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,021&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;632&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,797&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;Weighted average remaining lease term and discount rate information related to the Company&#x2019;s leases is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average remaining lease term (in years)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.90&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13.87&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average discount rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.59&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.83&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;The maturities of the Company&#x2019;s lease liabilities are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;As of December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Finance Leases&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Operating Leases&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 62%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2020&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,769&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,086&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2021&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,352&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,029&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,536&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,472&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,659&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,629&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2024&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,650&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,288&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;After 2024&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;29,371&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;14,232&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total minimum lease payments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;45,337&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44,736&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest component&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(19,375&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(7,727&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Present value of minimum lease payments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;25,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;37,009&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"/&gt;
  </us-gaap:LeasesOfLesseeDisclosureTextBlock>
    <gnrc:LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract
      contextRef="d_2019-01-01_2019-12-31_RangeAxis-MaximumMember"
      id="c56032254">P20Y</gnrc:LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="i_2019-12-31_RangeAxis-MaximumMember"
      id="c56032255">P10Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:LeaseCostTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434669">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Twelve Months Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating lease cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,647&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finance lease cost:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Amortization of ROU assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,531&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Interest on lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,227&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total lease cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;14,405&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032276"
      unitRef="USD">9647000</us-gaap:OperatingLeaseCost>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032278"
      unitRef="USD">2531000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032279"
      unitRef="USD">2227000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:LeaseCost
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032280"
      unitRef="USD">14405000</us-gaap:LeaseCost>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032262"
      unitRef="USD">10739000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032263"
      unitRef="USD">10845000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="c56032266"
      unitRef="USD">42024000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="c56032267"
      unitRef="USD">42056000</us-gaap:OperatingLeaseLiability>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="i_2019-01-01_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="c56032268"
      unitRef="USD">0</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <gnrc:ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434670">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating lease ROU assets (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;35,950&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating lease liabilities - current (2)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,231&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating lease liabilities - noncurrent (3)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;29,778&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;"&gt;Total operating lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;37,009&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finance Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance lease ROU assets, gross&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,142&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Accumulated depreciation - finance lease ROU assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(3,079&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Finance lease ROU assets, net (4)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;26,063&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance lease liabilities - current (5)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,830&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance lease liabilities - noncurrent (6)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;24,132&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;"&gt;Total finance lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;25,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherAssetsMember"
      decimals="-4"
      id="c56032282"
      unitRef="USD">35950000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesMember"
      decimals="-3"
      id="c56032283"
      unitRef="USD">7231000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2019-12-31_BalanceSheetLocationAxis-OperatingLeaseAndOtherLongtermLiabilitiesMember"
      decimals="-3"
      id="c56032284"
      unitRef="USD">29778000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember"
      decimals="-3"
      id="c56032285"
      unitRef="USD">37009000</us-gaap:OperatingLeaseLiability>
    <gnrc:FinanceLeaseRightOfUseAssetGross
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032287"
      unitRef="USD">29142000</gnrc:FinanceLeaseRightOfUseAssetGross>
    <gnrc:FinanceLeaseRightOfUseAssetAccumulatedDepreciation
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032288"
      unitRef="USD">3079000</gnrc:FinanceLeaseRightOfUseAssetAccumulatedDepreciation>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032289"
      unitRef="USD">26063000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032290"
      unitRef="USD">1830000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032291"
      unitRef="USD">24132000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032292"
      unitRef="USD">25962000</us-gaap:FinanceLeaseLiability>
    <gnrc:ScheduleOfLeasesCashFlowInformationTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434671">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Three Months Ended December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;Twelve Months Ended December 31, 2019&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating cash flows from operating leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,174&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,125&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating cash flows from finance leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;471&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,864&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Financing cash flows from finance leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;976&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,237&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;ROU assets obtained in exchange for lease liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;239&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,021&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;632&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,797&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ScheduleOfLeasesCashFlowInformationTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56032294"
      unitRef="USD">2174000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032295"
      unitRef="USD">10125000</us-gaap:OperatingLeasePayments>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56032296"
      unitRef="USD">471000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032297"
      unitRef="USD">1864000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56032298"
      unitRef="USD">976000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032299"
      unitRef="USD">3237000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56032301"
      unitRef="USD">239000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032302"
      unitRef="USD">4021000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56032303"
      unitRef="USD">632000</us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032304"
      unitRef="USD">8797000</us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability>
    <gnrc:LeaseTermAndDiscountRateTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434672">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average remaining lease term (in years)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.90&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13.87&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average discount rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Operating Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.59&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Finance Leases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.83&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:LeaseTermAndDiscountRateTableTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="i_2019-12-31" id="c56032306">P6Y10M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1 contextRef="i_2019-12-31" id="c56032307">P13Y10M13D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i_2019-12-31"
      decimals="4"
      id="c56032309"
      unitRef="Pure">0.0459</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="i_2019-12-31"
      decimals="4"
      id="c56032310"
      unitRef="Pure">0.0783</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <gnrc:OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434673">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;As of December 31, 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Finance Leases&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Operating Leases&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 62%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2020&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,769&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,086&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2021&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,352&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,029&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,536&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,472&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,659&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,629&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2024&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,650&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,288&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;After 2024&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;29,371&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;14,232&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total minimum lease payments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;45,337&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44,736&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest component&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(19,375&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(7,727&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Present value of minimum lease payments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;25,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;37,009&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032311"
      unitRef="USD">3769000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032312"
      unitRef="USD">9086000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032313"
      unitRef="USD">3352000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032314"
      unitRef="USD">7029000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032315"
      unitRef="USD">3536000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032316"
      unitRef="USD">5472000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032317"
      unitRef="USD">2659000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032318"
      unitRef="USD">4629000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032319"
      unitRef="USD">2650000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032320"
      unitRef="USD">4288000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032321"
      unitRef="USD">29371000</us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032322"
      unitRef="USD">14232000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032323"
      unitRef="USD">45337000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032324"
      unitRef="USD">44736000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032325"
      unitRef="USD">19375000</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032326"
      unitRef="USD">7727000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032327"
      unitRef="USD">25962000</us-gaap:FinanceLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2019-12-31_BalanceSheetLocationAxis-OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember"
      decimals="-3"
      id="c56032328"
      unitRef="USD">37009000</us-gaap:OperatingLeaseLiability>
    <us-gaap:ProductWarrantyDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434674">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;span style="-sec-ix-hidden:c56032330"&gt;&lt;span style="-sec-ix-hidden:c56032331"&gt;&lt;span style="-sec-ix-hidden:c56032332"&gt;&lt;span style="-sec-ix-hidden:c56032333"&gt;&lt;span style="-sec-ix-hidden:c56032334"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Product Warranty Obligations&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company records a liability for standard product warranty obligations accounted for as assurance warranties at the time of sale to a customer based upon historical warranty experience. The Company also records a liability for specific warranty matters when they become known and are reasonably estimable. The following is a tabular reconciliation of the Company&#x2019;s standard product warranty liability accounted for as an assurance warranty:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;41,785&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;35,422&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;31,695&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Product warranty reserve assumed in acquisition&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,062&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Payments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(26,096&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(20,029&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(18,861&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Provision for warranty issued&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;32,060&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;26,910&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21,347&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Changes in estimates for pre-existing warranties&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;505&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(518&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,198&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;49,316&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;41,785&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;35,422&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Additionally, the Company sells extended warranty coverage for certain products, which it accounts for as a service warranty. The sales of extended warranties are recorded as deferred revenue, and typically have a duration of &lt;span style="-sec-ix-hidden:c56032335"&gt;five&lt;/span&gt; to &lt;span style="-sec-ix-hidden:c56032336"&gt;ten&lt;/span&gt; years. The deferred revenue related to extended warranty coverage is amortized over the duration of the extended warranty contract period, following the standard warranty period, using the straight-line method. The Company believes the straight-line method is appropriate because the performance obligation is satisfied based on the passage of time. The amortization of deferred revenue is recorded to net sales in the consolidated statements of comprehensive income. The following is a tabular reconciliation of the deferred revenue related to extended warranty coverage:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;68,340&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;57,854&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;36,139&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred revenue contracts issued&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;24,483&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21,440&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,262&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amortization of deferred revenue contracts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(14,085&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(10,954&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(7,547&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;78,738&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;68,340&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;57,854&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The timing of recognition of the Company&#x2019;s deferred revenue balance related to extended warranties at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2020&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,535&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2021&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;16,798&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;14,705&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;11,367&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;After 2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;20,333&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;78,738&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; the Company launched a post-sale extended warranty marketing program with a &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt; party. In the program&#x2019;s agreement, the Company is required to pay fees to the &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt;-party service provider based on the number of extended warranty contracts that they sell, which it classifies as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income over the same period that the underlying deferred revenue is recognized. The balance of deferred contract costs as of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; was $6,190 and $4,782, respectively. Amortization of deferred contract costs recorded during the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; was $869, $615 and $193, respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Standard product warranty obligations and extended warranty related deferred revenues are included in the consolidated balance sheets as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Product warranty liability&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Current portion - other accrued liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;27,885&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,396&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Long-term portion - other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;21,431&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;16,389&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;49,316&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;41,785&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred revenue related to extended warranties&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Current portion - other accrued liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,519&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,646&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Long-term portion - other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;63,219&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;54,694&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;78,738&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;68,340&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"/&gt;
  </us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="d_2019-01-01_2019-12-31"
      id="c49034D6B-8EDB-4E4C-9F7E-0586287584B0">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;41,785&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;35,422&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;31,695&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Product warranty reserve assumed in acquisition&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,062&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Payments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(26,096&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(20,029&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(18,861&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Provision for warranty issued&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;32,060&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;26,910&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21,347&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Changes in estimates for pre-existing warranties&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;505&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(518&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,198&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;49,316&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;41,785&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;35,422&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;68,340&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;57,854&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;36,139&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred revenue contracts issued&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;24,483&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21,440&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;29,262&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amortization of deferred revenue contracts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(14,085&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(10,954&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(7,547&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;78,738&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;68,340&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;57,854&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032357"
      unitRef="USD">41785000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032358"
      unitRef="USD">35422000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2016-12-31"
      decimals="-3"
      id="c56032359"
      unitRef="USD">31695000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032360"
      unitRef="USD">1062000</us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition>
    <us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032361"
      unitRef="USD">0</us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition>
    <us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032362"
      unitRef="USD">43000</us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032363"
      unitRef="USD">26096000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032364"
      unitRef="USD">20029000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032365"
      unitRef="USD">18861000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032366"
      unitRef="USD">32060000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032367"
      unitRef="USD">26910000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032368"
      unitRef="USD">21347000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032369"
      unitRef="USD">505000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032370"
      unitRef="USD">-518000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032371"
      unitRef="USD">1198000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032372"
      unitRef="USD">49316000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032373"
      unitRef="USD">41785000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032374"
      unitRef="USD">35422000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032375"
      unitRef="USD">68340000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032376"
      unitRef="USD">57854000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2016-12-31"
      decimals="-3"
      id="c56032377"
      unitRef="USD">36139000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032378"
      unitRef="USD">24483000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032379"
      unitRef="USD">21440000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032380"
      unitRef="USD">29262000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
    <gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032381"
      unitRef="USD">14085000</gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts>
    <gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032382"
      unitRef="USD">10954000</gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts>
    <gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032383"
      unitRef="USD">7547000</gnrc:AmortizationOfDeferredRevenueOnExtendedWarrantyContracts>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032384"
      unitRef="USD">78738000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032385"
      unitRef="USD">68340000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032386"
      unitRef="USD">57854000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434677">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2020&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,535&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2021&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;16,798&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;14,705&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;11,367&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;After 2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;20,333&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;78,738&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01"
      decimals="-3"
      id="c56032387"
      unitRef="USD">15535000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2021-01-01"
      decimals="-3"
      id="c56032388"
      unitRef="USD">16798000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-01-01"
      decimals="-3"
      id="c56032389"
      unitRef="USD">14705000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2023-01-01"
      decimals="-3"
      id="c56032390"
      unitRef="USD">11367000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2024-01-01"
      decimals="-3"
      id="c56032391"
      unitRef="USD">20333000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032392"
      unitRef="USD">78738000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:CapitalizedContractCostNet
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032342"
      unitRef="USD">6190000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032343"
      unitRef="USD">4782000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032346"
      unitRef="USD">869000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032347"
      unitRef="USD">615000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032348"
      unitRef="USD">193000</us-gaap:CapitalizedContractCostAmortization>
    <gnrc:ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434678">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Product warranty liability&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Current portion - other accrued liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;27,885&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,396&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Long-term portion - other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;21,431&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;16,389&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;49,316&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;41,785&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred revenue related to extended warranties&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Current portion - other accrued liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,519&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,646&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Long-term portion - other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;63,219&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;54,694&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;78,738&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;68,340&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032394"
      unitRef="USD">27885000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032395"
      unitRef="USD">25396000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:StandardProductWarrantyAccrualNoncurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032396"
      unitRef="USD">21431000</us-gaap:StandardProductWarrantyAccrualNoncurrent>
    <us-gaap:StandardProductWarrantyAccrualNoncurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032397"
      unitRef="USD">16389000</us-gaap:StandardProductWarrantyAccrualNoncurrent>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032398"
      unitRef="USD">49316000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032399"
      unitRef="USD">41785000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrualCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032401"
      unitRef="USD">15519000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
    <us-gaap:ExtendedProductWarrantyAccrualCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032402"
      unitRef="USD">13646000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
    <us-gaap:ExtendedProductWarrantyAccrualNoncurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032403"
      unitRef="USD">63219000</us-gaap:ExtendedProductWarrantyAccrualNoncurrent>
    <us-gaap:ExtendedProductWarrantyAccrualNoncurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032404"
      unitRef="USD">54694000</us-gaap:ExtendedProductWarrantyAccrualNoncurrent>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032405"
      unitRef="USD">78738000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032406"
      unitRef="USD">68340000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:DebtDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434679">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;12.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Credit Agreements&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;Short-term borrowings are included in the consolidated balance sheets as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;ABL facility&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;30,961&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,459&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other lines of credit&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;27,753&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;27,124&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;58,714&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;45,583&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;Long-term borrowings are included in the consolidated balance sheets as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Term loan&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;830,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;879,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Original issue discount and deferred financing costs&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(18,048&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(22,440&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;ABL facility&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finance lease obligation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20,171&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,236&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,642&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;840,150&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;878,373&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less: current portion of debt&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;553&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,075&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less: current portion of finance lease obligation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,830&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;902&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;837,767&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;876,396&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Maturities of long-term borrowings outstanding at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;excluding finance lease obligations as their maturities are disclosed in Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;10,&lt;/em&gt; &#x201c;Leases,&#x201d; and before considering original issue discount and deferred financing costs, are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2020&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;553&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2021&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,683&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;After 2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;830,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;832,236&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s credit agreements originally provided for a $1,200,000 term loan B credit facility (Term Loan) and currently include a $300,000 uncommitted incremental term loan facility. The maturity date of the Term Loan is currently &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 13, 2026. &lt;/em&gt;The Term Loan is guaranteed by all of the Company&#x2019;s wholly-owned domestic restricted subsidiaries, and is secured by associated collateral agreements which pledge a &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt; priority lien on virtually all of the Company&#x2019;s assets, including fixed assets and intangibles, other than all cash, trade accounts receivable, inventory, and other current assets and proceeds thereof, which are secured by a &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; priority lien. The Term Loan initially bore interest at rates based upon either a base rate plus an applicable margin of 1.75% or adjusted LIBOR rate plus an applicable margin of 2.75%, subject to a LIBOR floor of 0.75%. Beginning in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2014,&lt;/em&gt; and measured each quarterly period thereafter, the applicable margin related to base rate loans was reduced to 1.50% and the applicable margin related to LIBOR rate loans was reduced to 2.50%, in each case, if the Company&#x2019;s net debt leverage ratio, as defined in the Term Loan, fell below 3.00 to &lt;em style="font-weight: inherit; font-style: normal;"&gt;1.00&lt;/em&gt; for that measurement period.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; May 2017, &lt;/em&gt;the Company amended its Term Loan, modifying the pricing of the facility by reducing the applicable margin rates to base rate plus a fixed applicable margin of 1.25% or adjusted LIBOR rate plus a fixed applicable margin of 2.25%. Further, the amendment removed the pricing grid that would reduce the applicable margin if a net debt leverage ratio of 3.00 to &lt;em style="font-weight: inherit; font-style: normal;"&gt;1.00&lt;/em&gt; was achieved. As a result, the Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; anticipate any future catch-up gains or losses resulting from changes in contractual interest rates to be recorded in the statements of comprehensive income. At the time, the amended Term Loan pricing was still subject to the 0.75% LIBOR floor. In connection with this amendment and in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;470&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;50,&lt;/em&gt; &lt;i&gt;Debt Modifications and Extinguishments&lt;/i&gt;, the Company capitalized $1,432 of fees paid to creditors as deferred financing costs on long-term borrowings and expensed $85 of transaction fees in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 2017, &lt;/em&gt;the Company amended the Term Loan, which further reduced the applicable margin rates to base rate plus a fixed applicable margin of 1.00% or adjusted LIBOR rate plus a fixed applicable margin of 2.00%. Additionally, the amendment eliminated the Excess Cash Flow payment requirement for &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; and will eliminate future requirements if the Company&#x2019;s secured leverage ratio is maintained below 3.75 to &lt;em style="font-weight: inherit; font-style: normal;"&gt;1.00&lt;/em&gt; times. In connection with this amendment and in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;470&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;50,&lt;/em&gt; the Company capitalized $2,346 of fees paid to creditors as original issue discount and deferred financing costs on long-term borrowings and expensed $38 of transaction fees in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 2018, &lt;/em&gt;the Company amended the Term Loan, which further reduced the applicable margin rates to base rate plus a fixed applicable margin of 0.75% or adjusted LIBOR rate plus a fixed applicable margin of 1.75%. In connection with this amendment and in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;470&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;50,&lt;/em&gt; the Company capitalized $829 of fees paid to creditors as deferred financing costs on long-term borrowings and expensed $118 of transaction fees in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 2019, &lt;/em&gt;the Company amended its Term Loan to extend the maturity date from &lt;em style="font-weight: inherit; font-style: normal;"&gt; May 31, 2023 &lt;/em&gt;to &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 13, 2026, &lt;/em&gt;as well as removed the LIBOR floor of 0.75% from the adjusted LIBOR rate. In connection with this amendment and in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;470&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;50,&lt;/em&gt; the Company capitalized $1,247 of fees paid to creditors as&#160;deferred financing costs on long-term borrowings and expensed $432 of transaction fees in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt; Additionally, the Company made a voluntary prepayment of&#160;$49,000&#160;on the term loan, which resulted in the write-off of $926 of original issue discount and capitalized debt issuance costs as a loss on extinguishment of debt in the consolidated statements of comprehensive income.&#160;&#160;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Term Loan does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; require an Excess Cash Flow payment if the Company&#x2019;s net secured leverage ratio is maintained below 3.75 to &lt;em style="font-weight: inherit; font-style: normal;"&gt;1.00&lt;/em&gt; times. As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company&#x2019;s net secured leverage ratio was 1.50 to &lt;em style="font-weight: inherit; font-style: normal;"&gt;1.00&lt;/em&gt; times, and the Company was in compliance with all covenants of the Term Loan. There are &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; financial maintenance covenants on the Term Loan.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s credit agreements also originally provided for a senior secured ABL revolving credit facility (ABL Facility). The maturity date of the ABL Facility is currently &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 12, 2023. &lt;/em&gt;Borrowings under the ABL Facility are guaranteed by all of the Company&#x2019;s wholly-owned domestic restricted subsidiaries, and are secured by associated collateral agreements which pledge a &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt; priority lien on all cash, trade accounts receivable, inventory, and other current assets and proceeds thereof, and a &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; priority lien on all other assets, including fixed assets and intangibles of the Company and certain domestic subsidiaries. ABL Facility borrowings initially bore interest at rates based upon either a base rate plus an applicable margin of 1.00% or adjusted LIBOR rate plus an applicable margin of 2.00%, in each case, subject to adjustments based upon average availability under the ABL Facility.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 2018, &lt;/em&gt;the Company amended the ABL Facility; increasing it from $250,000 to $300,000 and extending the maturity date to &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 12, 2023. &lt;/em&gt;In addition, the ABL Facility amendment modified the pricing by reducing certain applicable interest rates to either a base rate plus an applicable margin of 0.375% or an adjusted LIBOR rate plus an applicable margin of 1.375%. In connection with this amendment and in accordance with ASC &lt;em style="font-weight: inherit; font-style: normal;"&gt;470&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;50,&lt;/em&gt; the Company capitalized $755 of new debt issuance costs as deferred financing costs on long-term borrowings and wrote-off $34 of capitalized debt issuance costs as a loss on extinguishment of debt in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 2018, &lt;/em&gt;the Company borrowed $50,000 under the ABL Facility, the proceeds of which were used as a voluntary prepayment of the Term Loan. As a result of the prepayment of the Term Loan, the Company wrote-off $1,298 of original issue discount and capitalized debt issuance costs during the &lt;em style="font-weight: inherit; font-style: normal;"&gt;second&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; as a loss on extinguishment of debt in the consolidated statements of comprehensive income. In &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 2018, &lt;/em&gt;the Company repaid the $50,000 outstanding ABL Facility balance with cash on hand.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;there was $30,961 outstanding under the ABL Facility, leaving $268,608 of availability, net of outstanding letters of credit.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;short-term borrowings consisted of borrowings by the Company&#x2019;s foreign subsidiaries on local lines of credit and the ABL Facility, which totaled $58,714 and $45,583, respectively.&lt;/p&gt;
  </us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfShortTermDebtTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434680">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;ABL facility&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;30,961&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,459&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other lines of credit&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;27,753&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;27,124&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;58,714&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;45,583&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfShortTermDebtTextBlock>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2019-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember"
      decimals="-3"
      id="c56032493"
      unitRef="USD">30961000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2018-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember"
      decimals="-3"
      id="c56032494"
      unitRef="USD">18459000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2019-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember"
      decimals="-3"
      id="c56032495"
      unitRef="USD">27753000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2018-12-31_ShortTermDebtTypeAxis-OtherLinesOfCreditMember"
      decimals="-3"
      id="c56032496"
      unitRef="USD">27124000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032497"
      unitRef="USD">58714000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032498"
      unitRef="USD">45583000</us-gaap:ShortTermBorrowings>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434681">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Term loan&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;830,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;879,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Original issue discount and deferred financing costs&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(18,048&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(22,440&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;ABL facility&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finance lease obligation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,962&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20,171&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,236&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,642&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;840,150&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;878,373&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less: current portion of debt&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;553&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,075&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less: current portion of finance lease obligation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,830&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;902&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;837,767&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;876,396&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i_2019-12-31"
      decimals="-7"
      id="c56032499"
      unitRef="USD">830000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i_2018-12-31"
      decimals="-6"
      id="c56032500"
      unitRef="USD">879000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032501"
      unitRef="USD">18048000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032502"
      unitRef="USD">22440000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:LineOfCredit
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032503"
      unitRef="USD">0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCredit
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032504"
      unitRef="USD">0</us-gaap:LineOfCredit>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032505"
      unitRef="USD">25962000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032506"
      unitRef="USD">20171000</us-gaap:FinanceLeaseLiability>
    <us-gaap:OtherBorrowings
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032507"
      unitRef="USD">2236000</us-gaap:OtherBorrowings>
    <us-gaap:OtherBorrowings
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032508"
      unitRef="USD">1642000</us-gaap:OtherBorrowings>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032509"
      unitRef="USD">840150000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032510"
      unitRef="USD">878373000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtCurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032511"
      unitRef="USD">553000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032512"
      unitRef="USD">1075000</us-gaap:LongTermDebtCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032513"
      unitRef="USD">1830000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032514"
      unitRef="USD">902000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032515"
      unitRef="USD">837767000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032516"
      unitRef="USD">876396000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434682">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2020&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;553&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2021&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,683&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;After 2023&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;830,000&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;832,236&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032517"
      unitRef="USD">553000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032518"
      unitRef="USD">1683000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032519"
      unitRef="USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032520"
      unitRef="USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <gnrc:LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour
      contextRef="i_2019-12-31"
      decimals="-7"
      id="c56032521"
      unitRef="USD">830000000</gnrc:LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032522"
      unitRef="USD">832236000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i_2013-05-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-8"
      id="c56032410"
      unitRef="USD">1200000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <gnrc:UncommittedIncrementalTermLoanFacility
      contextRef="i_2013-05-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-8"
      id="c56032411"
      unitRef="USD">300000000</gnrc:UncommittedIncrementalTermLoanFacility>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"
      decimals="4"
      id="c56032414"
      unitRef="Pure">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="4"
      id="c56032415"
      unitRef="Pure">0.0275</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2013-05-31_2013-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember"
      decimals="4"
      id="c56032416"
      unitRef="Pure">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-BaseRateMember"
      decimals="3"
      id="c56032419"
      unitRef="Pure">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2014-04-01_2014-06-30_LongtermDebtTypeAxis-TermLoanMember_StatementScenarioAxis-NetDebtLeverageRatioThresholdMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="3"
      id="c56032420"
      unitRef="Pure">0.0250</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <gnrc:NetDebtLeverageRatioThreshold
      contextRef="d_2018-01-01_2018-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="INF"
      id="c56032421"
      unitRef="Pure">3.00</gnrc:NetDebtLeverageRatioThreshold>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"
      decimals="4"
      id="c56032423"
      unitRef="Pure">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="4"
      id="c56032424"
      unitRef="Pure">0.0225</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <gnrc:NetDebtLeverageRatioThreshold
      contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="INF"
      id="c56032425"
      unitRef="Pure">3.00</gnrc:NetDebtLeverageRatioThreshold>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2017-05-01_2017-05-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember"
      decimals="4"
      id="c56032428"
      unitRef="Pure">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i_2017-06-30_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032431"
      unitRef="USD">1432000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DebtInstrumentFeeAmount
      contextRef="i_2017-06-30_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032432"
      unitRef="USD">85000</us-gaap:DebtInstrumentFeeAmount>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"
      decimals="2"
      id="c56032435"
      unitRef="Pure">0.0100</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="2"
      id="c56032436"
      unitRef="Pure">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <gnrc:SecuredLeverageRatio
      contextRef="d_2017-12-01_2017-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="INF"
      id="c56032438"
      unitRef="Pure">3.75</gnrc:SecuredLeverageRatio>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i_2017-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032442"
      unitRef="USD">2346000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DebtInstrumentFeeAmount
      contextRef="i_2017-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032443"
      unitRef="USD">38000</us-gaap:DebtInstrumentFeeAmount>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-BaseRateMember"
      decimals="4"
      id="c56032446"
      unitRef="Pure">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2018-06-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="4"
      id="c56032447"
      unitRef="Pure">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i_2018-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032450"
      unitRef="USD">829000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DebtInstrumentFeeAmount
      contextRef="i_2018-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032451"
      unitRef="USD">118000</us-gaap:DebtInstrumentFeeAmount>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember_VariableRateAxis-LIBORFloorRateMember"
      decimals="4"
      id="c56032454"
      unitRef="Pure">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032457"
      unitRef="USD">1247000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DebtInstrumentFeeAmount
      contextRef="i_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032458"
      unitRef="USD">432000</us-gaap:DebtInstrumentFeeAmount>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="d_2019-10-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-6"
      id="c56032461"
      unitRef="USD">49000000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2019-10-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032462"
      unitRef="USD">-926000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <gnrc:NetDebtLeverageRatioThreshold
      contextRef="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="INF"
      id="c56032464"
      unitRef="Pure">3.75</gnrc:NetDebtLeverageRatioThreshold>
    <gnrc:SecuredLeverageRatio
      contextRef="d_2019-01-01_2019-12-31_LongtermDebtTypeAxis-TermLoanMember"
      decimals="INF"
      id="c56032466"
      unitRef="Pure">1.50</gnrc:SecuredLeverageRatio>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember"
      decimals="2"
      id="c56032471"
      unitRef="Pure">0.0100</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2015-05-01_2015-05-31_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="2"
      id="c56032472"
      unitRef="Pure">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember"
      decimals="-7"
      id="c56032474"
      unitRef="USD">250000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-8"
      id="c56032475"
      unitRef="USD">300000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-BaseRateMember"
      decimals="5"
      id="c56032476"
      unitRef="Pure">0.00375</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2018-06-01_2018-06-30_CreditFacilityAxis-ABLRevolvingCreditFacilityMember_VariableRateAxis-AdjustedLIBORRateMember"
      decimals="5"
      id="c56032477"
      unitRef="Pure">0.01375</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-3"
      id="c56032480"
      unitRef="USD">755000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2018-04-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-3"
      id="c56032481"
      unitRef="USD">-34000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="d_2018-06-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-7"
      id="c56032484"
      unitRef="USD">50000000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="d_2018-04-01_2018-06-30_LongtermDebtTypeAxis-TermLoanMember"
      decimals="-3"
      id="c56032485"
      unitRef="USD">-1298000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="d_2018-10-01_2018-10-31_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-7"
      id="c56032488"
      unitRef="USD">50000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:LineOfCredit
      contextRef="i_2019-12-31_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-3"
      id="c56032489"
      unitRef="USD">30961000</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i_2019-12-31_CreditFacilityAxis-AmendedABLFacilityMember"
      decimals="-3"
      id="c56032490"
      unitRef="USD">268608000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032491"
      unitRef="USD">58714000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032492"
      unitRef="USD">45583000</us-gaap:ShortTermBorrowings>
    <us-gaap:TreasuryStockTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434683">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;13.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Stock Repurchase Programs&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt; August 2015, &lt;/em&gt;the Company&#x2019;s Board of Directors approved a $200,000 stock repurchase program, which the Company completed in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;third&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016.&lt;/em&gt; In &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 2016, &lt;/em&gt;the Company&#x2019;s Board of Directors approved a new $250,000 stock repurchase program, which expired in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018.&lt;/em&gt; In &lt;em style="font-weight: inherit; font-style: normal;"&gt; September 2018, &lt;/em&gt;the Company&#x2019;s Board of Directors approved another stock repurchase program, which commenced in &lt;em style="font-weight: inherit; font-style: normal;"&gt; October 2018, &lt;/em&gt;and under which the Company &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;repurchase an additional $250,000 of its common stock over the following 24 months. The Company &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;repurchase its common stock from time to time, in amounts and at prices the Company deems appropriate, subject to market conditions and other considerations. The repurchases &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;be executed using open market purchases, privately negotiated agreements or other transactions. The actual timing, number and value of shares repurchased under the program will be determined by management at its discretion and will depend on a number of factors, including the market price of the Company&#x2019;s common stock and general market and economic conditions, applicable legal requirements, and compliance with the terms of the Company&#x2019;s outstanding indebtedness. The repurchases &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;be funded with cash on hand, available borrowings or proceeds from potential debt or other capital markets sources. The stock repurchase program &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;be suspended or discontinued at any time without prior notice. During the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company did &lt;span style="-sec-ix-hidden:c56032532"&gt;not&lt;/span&gt; repurchase any shares of its common stock. During the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; the Company repurchased 560,000 and 844,500 shares of its common stock, respectively, for $25,656 and $30,012, respectively, all funded with cash on hand. Since the inception of the above noted programs, the Company has repurchased 8,676,706 shares of its common stock for $305,547 (at an average cost per share of $35.21), all funded with cash on hand.&lt;/p&gt;
  </us-gaap:TreasuryStockTextBlock>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i_2015-08-31"
      decimals="-8"
      id="c56032524"
      unitRef="USD">200000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i_2016-10-31"
      decimals="-7"
      id="c56032527"
      unitRef="USD">250000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i_2018-09-30"
      decimals="-7"
      id="c56032530"
      unitRef="USD">250000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramPeriodInForce1 contextRef="d_2018-09-01_2018-09-30" id="c56032531">P24M</us-gaap:StockRepurchaseProgramPeriodInForce1>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2018-01-01_2018-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56032534"
      unitRef="Share">560000</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2017-01-01_2017-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56032535"
      unitRef="Share">844500</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032536"
      unitRef="USD">25656000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032537"
      unitRef="USD">30012000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <gnrc:SharesAcquiredUnderStockRepurchasesProgramShares
      contextRef="d_2015-08-01_2019-12-31_StatementEquityComponentsAxis-TreasuryStockMember"
      decimals="INF"
      id="c56032538"
      unitRef="Share">8676706</gnrc:SharesAcquiredUnderStockRepurchasesProgramShares>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2015-08-01_2019-12-31"
      decimals="-3"
      id="c56032539"
      unitRef="USD">305547000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="d_2015-08-01_2019-12-31"
      decimals="INF"
      id="c56032540"
      unitRef="USDPerShare">35.21</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:EarningsPerShareTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434684">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;14.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Earnings Per Share&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Basic earnings per share is calculated by dividing net income attributable to the common shareholders of the Company by the weighted average number of common shares outstanding during the period, exclusive of restricted shares. Except where the result would be anti-dilutive, diluted earnings per share is calculated by assuming the vesting of unvested restricted stock and the exercise of stock options. Refer to Note &lt;em style="font-weight: inherit; font-style: normal;"&gt;4,&lt;/em&gt; &#x201c;Redeemable Noncontrolling Interest,&#x201d; to the consolidated financial statements for further information regarding the accounting for redeemable noncontrolling interests.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Numerator&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;252,007&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;238,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;157,808&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Redeemable noncontrolling interest redemption value adjustment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,253&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(17,970&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to common shareholders&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;253,260&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;220,287&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;158,717&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Denominator&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average shares, basic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,926,986&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,662,031&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;62,040,704&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Dilutive effect of stock compensation awards (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;938,460&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;571,194&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;602,168&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Diluted shares&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;62,865,446&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;62,233,225&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;62,642,872&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to common shareholders per share&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Basic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.09&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.57&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.56&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Diluted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.03&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.54&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.53&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Excludes approximately 26,100 and 147,400 stock options for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, as the impact of such awards was anti-dilutive. There were &lt;em style="font-weight: inherit; font-style: normal;"&gt;&lt;span style="-sec-ix-hidden:c56032550"&gt;no&lt;/span&gt;&lt;/em&gt; awards with an anti-dilutive impact for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019.&lt;/em&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
  </us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434685">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Numerator&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;252,007&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;238,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;157,808&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Redeemable noncontrolling interest redemption value adjustment&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,253&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(17,970&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to common shareholders&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;253,260&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;220,287&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;158,717&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Denominator&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average shares, basic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,926,986&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,662,031&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;62,040,704&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Dilutive effect of stock compensation awards (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;938,460&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;571,194&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;602,168&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Diluted shares&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;62,865,446&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;62,233,225&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;62,642,872&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to common shareholders per share&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Basic&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.09&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.57&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.56&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Diluted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.03&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.54&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.53&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032552"
      unitRef="USD">252007000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032553"
      unitRef="USD">238257000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032554"
      unitRef="USD">157808000</us-gaap:NetIncomeLoss>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032555"
      unitRef="USD">1253000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032556"
      unitRef="USD">-17970000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <us-gaap:MinorityInterestChangeInRedemptionValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032557"
      unitRef="USD">909000</us-gaap:MinorityInterestChangeInRedemptionValue>
    <gnrc:NetIncomeLossAvailableToCommonStockholders
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032558"
      unitRef="USD">253260000</gnrc:NetIncomeLossAvailableToCommonStockholders>
    <gnrc:NetIncomeLossAvailableToCommonStockholders
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032559"
      unitRef="USD">220287000</gnrc:NetIncomeLossAvailableToCommonStockholders>
    <gnrc:NetIncomeLossAvailableToCommonStockholders
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032560"
      unitRef="USD">158717000</gnrc:NetIncomeLossAvailableToCommonStockholders>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56032562"
      unitRef="Share">61926986</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56032563"
      unitRef="Share">61662031</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56032564"
      unitRef="Share">62040704</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56032565"
      unitRef="Share">938460</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56032566"
      unitRef="Share">571194</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56032567"
      unitRef="Share">602168</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56032568"
      unitRef="Share">62865446</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56032569"
      unitRef="Share">62233225</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56032570"
      unitRef="Share">62642872</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56032572"
      unitRef="USDPerShare">4.09</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56032573"
      unitRef="USDPerShare">3.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56032574"
      unitRef="USDPerShare">2.56</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56032575"
      unitRef="USDPerShare">4.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56032576"
      unitRef="USDPerShare">3.54</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56032577"
      unitRef="USDPerShare">2.53</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="d_2018-01-01_2018-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032546"
      unitRef="Share">26100</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="d_2017-01-01_2017-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032547"
      unitRef="Share">147400</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434686">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;15.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Income Taxes&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s provision for income taxes consists of the following:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Current:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Federal&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;41,686&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;32,072&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,753&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;State&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,211&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,639&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,775&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,660&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,546&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,585&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;48,557&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;22,113&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Federal&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,393&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;22,225&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,213&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;State&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,390&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,910&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,139&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,263&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;479&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(2,777&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,520&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;24,614&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,575&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Change in valuation allowance&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(778&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,015&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,454&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;67,299&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;69,856&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;44,142&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company files U.S federal, U.S. state and foreign jurisdiction tax returns which are subject to examination up to the expiration of the statute of limitations. The Company&#160;believes the tax positions taken on its&#160;returns would be sustained upon an exam, or where a position is uncertain, adequate reserves have been recorded. As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company is &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; longer subject to income tax examinations for United States federal income taxes for tax years prior to &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016.&lt;/em&gt; Due to the carryforward of net operating losses and research &amp;amp; development credits, the Company&#x2019;s Wisconsin state income tax returns for tax years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2009&lt;/em&gt; through &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; remain open. In addition, the Company is subject to audit by various foreign taxing jurisdictions for the tax years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2013&lt;/em&gt; through &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company is regularly under examination in the various jurisdictions&#160;in which we operate. The Company is&#160;actively managing the examinations and working to address any open matters. While the Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; believe any material taxes or penalties are due, there is a possibility that the ultimate tax outcome of an examination &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;result in differences from what was recorded. Such differences &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;affect the provision for income taxes in the period in which the determination is made, and could impact the Company&#x2019;s financial results.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Significant components of deferred tax assets and liabilities are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred tax assets:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Accrued expenses&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21,053&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;16,745&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Deferred revenue&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;14,697&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,418&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Inventories&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,879&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,500&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Pension obligations&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,062&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Stock-based compensation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,490&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,960&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Operating loss and credit carryforwards&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;28,356&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,585&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Bad debt&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,094&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,363&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,275&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,516&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Valuation allowance&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(5,024&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(5,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;81,820&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;68,347&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred tax liabilities:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Goodwill and intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;142,159&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;108,899&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Depreciation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;27,864&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,429&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Debt refinancing costs&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,119&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,206&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Prepaid expenses&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,073&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;950&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total deferred tax liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;175,215&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;139,484&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net deferred tax liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(93,395&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(71,137&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; deferred tax assets of $2,933 and $163, and deferred tax liabilities of $96,328 and $71,300, respectively, were reflected on the consolidated balance sheets.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company maintains a valuation allowance against the deferred tax assets of an entity when it is uncertain the entity will generate sufficient taxable income to utilize the asset. During &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; the valuation allowance decreased by $778 primarily due to an increase in income allowing for a utilization of tax credits, partially offset by current losses in certain foreign subsidiaries.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;At &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company had various state research &amp;amp; development and state manufacturing tax credit carryforwards of approximately $8,291 and $12,747, respectively, which expire between &lt;em style="font-weight: inherit; font-style: normal;"&gt;2020&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2034.&lt;/em&gt; The Company believes it will generate sufficient taxable income in these jurisdictions to fully utilize the credits prior to their expiration.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Changes in the Company&#x2019;s gross liability for unrecognized tax benefits, excluding interest and penalties, were as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unrecognized tax benefit, beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,635&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,122&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;"&gt;Increase in unrecognized tax benefit for positions taken in prior period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;633&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;"&gt;Increase in unrecognized tax benefit for positions taken in current period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;495&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;580&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Statute of limitation expirations&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(43&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,818&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Settlements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(249&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unrecognized tax benefit, end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;6,720&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;5,635&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The unrecognized tax benefit as of&#160;&lt;em style="font-weight: inherit; font-style: normal;"&gt; December&#160;&lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;31,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; if recognized, would favorably impact the effective tax rate.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of&#160;&lt;em style="font-weight: inherit; font-style: normal;"&gt; December&#160;&lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;31,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; and&#160;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; total accrued interest of approximately $71 and&#160;$37, respectively,&#160;and&#160;accrued penalties of approximately&#160;$195 and&#160;$136, respectively, associated with net unrecognized tax benefits are included in the consolidated balance sheets. Interest and penalties are recorded as a component of income tax expense.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; expect a significant increase or decrease to the total amounts of unrecognized tax benefits related to continuing operations during the fiscal year ending &lt;em style="font-weight: inherit; font-style: normal;"&gt; December&#160;&lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;31,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2020.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 22, 2017, &lt;/em&gt;the U.S. government enacted comprehensive tax legislation commonly referred to as the Tax Cuts and Jobs Act (the &#x201c;Tax Act&#x201d;). The Tax Act includes a mandatory &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt;-time tax on accumulated earnings of foreign subsidiaries, and as a result, all previously unremitted earnings for which &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; U.S. deferred tax liability had been accrued have now been subject to U.S. tax. Notwithstanding the U.S. taxation of these amounts, the Company intends to continue to invest these earnings, as well as the capital in these subsidiaries, indefinitely outside of the U.S. and do &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; expect to incur any significant additional taxes related to such amounts.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;A reconciliation of the statutory tax rates and the effective tax rates for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;U.S. statutory rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;35.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;State taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.7&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.1&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;State tax rate differential&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Research and development credits&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.8&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.4&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;State credits&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.2&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Share-based compensation (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.6&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.4&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Tax Act impact (2)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.2&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(13.9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(0.8&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(0.2&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(0.9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Effective tax rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;21.1&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;22.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;21.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;With the adoption of ASU &lt;em style="font-weight: inherit; font-style: normal;"&gt;2016&lt;/em&gt;-&lt;em style="font-weight: inherit; font-style: normal;"&gt;09&lt;/em&gt; in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; excess tax benefits from equity awards are reflected within the provision for income taxes rather than within the consolidated balance sheet.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;2&lt;/em&gt;)&lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt;As a result of the Tax Act, we recognized a &lt;em style="font-weight: inherit; font-style: normal;"&gt;one&lt;/em&gt;-time, non-cash benefit of $28.4 million in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from &lt;em style="font-weight: inherit; font-style: normal;"&gt;35%&lt;/em&gt; to &lt;em style="font-weight: inherit; font-style: normal;"&gt;21%.&lt;/em&gt;&#160;&lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
  </us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434687">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Current:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Federal&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;41,686&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;32,072&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,753&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;State&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,211&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,639&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,775&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,660&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,546&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,585&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;48,557&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;22,113&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Federal&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,393&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;22,225&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;18,213&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;State&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,390&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,910&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,139&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,263&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;479&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(2,777&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,520&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;24,614&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,575&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Change in valuation allowance&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(778&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(1,015&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,454&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;67,299&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;69,856&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;44,142&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032632"
      unitRef="USD">41686000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032633"
      unitRef="USD">32072000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032634"
      unitRef="USD">15753000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032635"
      unitRef="USD">4211000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032636"
      unitRef="USD">9639000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032637"
      unitRef="USD">1775000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032638"
      unitRef="USD">2660000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032639"
      unitRef="USD">4546000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032640"
      unitRef="USD">4585000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032641"
      unitRef="USD">48557000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032642"
      unitRef="USD">46257000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032643"
      unitRef="USD">22113000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032645"
      unitRef="USD">19393000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032646"
      unitRef="USD">22225000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032647"
      unitRef="USD">18213000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032648"
      unitRef="USD">1390000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032649"
      unitRef="USD">1910000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032650"
      unitRef="USD">4139000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032651"
      unitRef="USD">-1263000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032652"
      unitRef="USD">479000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032653"
      unitRef="USD">-2777000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032654"
      unitRef="USD">19520000</gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance>
    <gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032655"
      unitRef="USD">24614000</gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance>
    <gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032656"
      unitRef="USD">19575000</gnrc:DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032657"
      unitRef="USD">-778000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032658"
      unitRef="USD">-1015000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032659"
      unitRef="USD">2454000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032660"
      unitRef="USD">67299000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032661"
      unitRef="USD">69856000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032662"
      unitRef="USD">44142000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434688">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred tax assets:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Accrued expenses&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21,053&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;16,745&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Deferred revenue&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;14,697&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,418&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Inventories&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,879&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,500&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Pension obligations&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,062&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Stock-based compensation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,490&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,960&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Operating loss and credit carryforwards&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;28,356&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,585&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Bad debt&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,094&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,363&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,275&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,516&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Valuation allowance&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(5,024&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(5,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;81,820&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;68,347&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred tax liabilities:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Goodwill and intangible assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;142,159&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;108,899&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Depreciation&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;27,864&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,429&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Debt refinancing costs&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,119&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,206&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Prepaid expenses&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,073&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;950&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total deferred tax liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;175,215&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;139,484&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net deferred tax liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(93,395&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(71,137&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032664"
      unitRef="USD">21053000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032665"
      unitRef="USD">16745000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032666"
      unitRef="USD">14697000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032667"
      unitRef="USD">12418000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032668"
      unitRef="USD">9879000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="i_2018-12-31"
      decimals="-5"
      id="c56032669"
      unitRef="USD">8500000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032670"
      unitRef="USD">0</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032671"
      unitRef="USD">1062000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032672"
      unitRef="USD">7490000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032673"
      unitRef="USD">5960000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032674"
      unitRef="USD">28356000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032675"
      unitRef="USD">25585000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032676"
      unitRef="USD">1094000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032677"
      unitRef="USD">1363000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032678"
      unitRef="USD">4275000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032679"
      unitRef="USD">2516000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032680"
      unitRef="USD">5024000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032681"
      unitRef="USD">5802000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032682"
      unitRef="USD">81820000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032683"
      unitRef="USD">68347000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032685"
      unitRef="USD">142159000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032686"
      unitRef="USD">108899000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032687"
      unitRef="USD">27864000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032688"
      unitRef="USD">25429000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032689"
      unitRef="USD">4119000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032690"
      unitRef="USD">4206000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032691"
      unitRef="USD">1073000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032692"
      unitRef="USD">950000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032693"
      unitRef="USD">175215000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032694"
      unitRef="USD">139484000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032695"
      unitRef="USD">93395000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032696"
      unitRef="USD">71137000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032588"
      unitRef="USD">2933000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032589"
      unitRef="USD">163000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032590"
      unitRef="USD">96328000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2018-12-31"
      decimals="-5"
      id="c56032591"
      unitRef="USD">71300000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032593"
      unitRef="USD">-778000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <gnrc:TaxCreditCarryForwardStateResearchAndDevelopment
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032594"
      unitRef="USD">8291000</gnrc:TaxCreditCarryForwardStateResearchAndDevelopment>
    <gnrc:TaxCreditCarryforwardStateManufacturing
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032595"
      unitRef="USD">12747000</gnrc:TaxCreditCarryforwardStateManufacturing>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434689">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unrecognized tax benefit, beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,635&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7,122&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;"&gt;Increase in unrecognized tax benefit for positions taken in prior period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;633&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;"&gt;Increase in unrecognized tax benefit for positions taken in current period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;495&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;580&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Statute of limitation expirations&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(43&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,818&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Settlements&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(249&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unrecognized tax benefit, end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;6,720&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;5,635&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032697"
      unitRef="USD">5635000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032698"
      unitRef="USD">7122000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032699"
      unitRef="USD">633000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032700"
      unitRef="USD">0</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032701"
      unitRef="USD">495000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032702"
      unitRef="USD">580000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032703"
      unitRef="USD">43000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032704"
      unitRef="USD">1818000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032705"
      unitRef="USD">-0</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032706"
      unitRef="USD">249000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i_2019-12-31"
      decimals="-4"
      id="c56032707"
      unitRef="USD">6720000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032708"
      unitRef="USD">5635000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032605"
      unitRef="USD">71000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032606"
      unitRef="USD">37000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032607"
      unitRef="USD">195000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032608"
      unitRef="USD">136000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434690">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;U.S. statutory rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;21.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;35.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;State taxes&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.7&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.1&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;State tax rate differential&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Research and development credits&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.8&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.4&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;State credits&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.2&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Share-based compensation (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.6&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1.4&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Tax Act impact (2)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;-&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(0.2&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(13.9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(0.8&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(0.2&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(0.9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Effective tax rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;21.1&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;22.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;21.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="d_2019-01-01_2019-12-31"
      decimals="2"
      id="c56032709"
      unitRef="Pure">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="d_2018-01-01_2018-12-31"
      decimals="2"
      id="c56032710"
      unitRef="Pure">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="d_2017-01-01_2017-12-31"
      decimals="2"
      id="c56032711"
      unitRef="Pure">0.350</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="d_2019-01-01_2019-12-31"
      decimals="3"
      id="c56032712"
      unitRef="Pure">0.043</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032713"
      unitRef="Pure">0.047</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032714"
      unitRef="Pure">0.041</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <gnrc:EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent
      contextRef="d_2019-01-01_2019-12-31"
      decimals="2"
      id="c56032715"
      unitRef="Pure">-0.010</gnrc:EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="d_2019-01-01_2019-12-31"
      decimals="3"
      id="c56032718"
      unitRef="Pure">0.008</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032719"
      unitRef="Pure">0.013</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032720"
      unitRef="Pure">0.014</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent
      contextRef="d_2019-01-01_2019-12-31"
      decimals="2"
      id="c56032721"
      unitRef="Pure">0.010</gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent>
    <gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent
      contextRef="d_2018-01-01_2018-12-31"
      decimals="2"
      id="c56032722"
      unitRef="Pure">0.010</gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent>
    <gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032723"
      unitRef="Pure">0.002</gnrc:EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="d_2019-01-01_2019-12-31"
      decimals="3"
      id="c56032724"
      unitRef="Pure">-0.006</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032725"
      unitRef="Pure">-0.005</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032726"
      unitRef="Pure">-0.014</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032728"
      unitRef="Pure">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032729"
      unitRef="Pure">-0.139</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="d_2019-01-01_2019-12-31"
      decimals="3"
      id="c56032730"
      unitRef="Pure">-0.008</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032731"
      unitRef="Pure">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032732"
      unitRef="Pure">-0.009</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="d_2019-01-01_2019-12-31"
      decimals="3"
      id="c56032733"
      unitRef="Pure">0.211</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032734"
      unitRef="Pure">0.225</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="d_2017-01-01_2017-12-31"
      decimals="3"
      id="c56032735"
      unitRef="Pure">0.213</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit
      contextRef="d_2017-10-01_2017-12-31"
      decimals="-5"
      id="c56032626"
      unitRef="USD">28400000</us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434691">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;16.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Benefit Plans&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Medical and Dental Plan&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company maintains medical and dental benefit plans covering its full-time domestic employees and their dependents. Certain plans are partially or fully self-funded under which participant claims are obligations of the plan. These plans are funded through employer and employee contributions at a level sufficient to pay for the benefits provided by the plan. The Company&#x2019;s contributions to the plans were $18,290, $14,660, and $14,992 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s foreign subsidiaries participate in government sponsored medical benefit plans. In certain cases, the Company purchases supplemental medical coverage for certain employees at these foreign locations. The expenses related to these plans are &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; material to the Company&#x2019;s consolidated financial statements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Savings Plan&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company maintains a defined-contribution &lt;em style="font-weight: inherit; font-style: normal;"&gt;401&lt;/em&gt;(k) savings plan for eligible domestic employees. Under the plan, employees &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;defer receipt of a portion of their eligible compensation. The Company &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;contribute a matching contribution of 50% of the &lt;em style="font-weight: inherit; font-style: normal;"&gt;first&lt;/em&gt; 6% of eligible compensation of employees. The Company &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;also contribute a non-elective contribution for eligible employees employed on &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2008 &lt;/em&gt;that were impacted by the freezing of the Company&#x2019;s pension plans. The Company&#x2019;s matching contributions are subject to vesting. Forfeitures &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;be applied against plan expenses and company contributions. The Company recognized $4,791, $4,193 and $3,600 of expense related to these plans in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&lt;b&gt;Pension Plans&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Historically, the Company maintained frozen noncontributory salaried and hourly pension plans (Pension Plans) covering certain domestic employees. The Pension Plans were frozen effective &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2008. &lt;/em&gt;Effective &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;the Pension Plans were merged into the same plan (Pension Plan), resulting in &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; change to benefits for participants. The benefits under the salaried plan were based upon years of service and the participants&#x2019; defined final average monthly compensation. The benefits under the hourly plan were based on a unit amount at the date of termination multiplied by the participant&#x2019;s years of credited service.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; the Company completed the termination of its Pension Plan. &#160;In connection with the Company&#x2019;s activities to terminate the plan, lump sum distributions were made in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; to individuals who elected lump sum distributions, including rolling over their accounts to the Company&#x2019;s &lt;em style="font-weight: inherit; font-style: normal;"&gt;401&lt;/em&gt;(k) savings plan. Also in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; annuity contracts were purchased to settle obligations for the remaining participants.&#160;Upon settlement of the pension liability, the Company reclassified related unrecognized pension losses recorded in&#160;AOCL to the consolidated statements of comprehensive income. As a result, the Company recorded pre-tax settlement charges of $10,920 in the &lt;em style="font-weight: inherit; font-style: normal;"&gt;fourth&lt;/em&gt; quarter of &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s historical funding policy for the Pension Plans was to contribute amounts at least equal to the minimum annual amount required by applicable regulations. In the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;the Company made a voluntary pension prepayment of $9,400. In the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;the Company made required contributions of $1,017 in connection with the plan termination. &lt;em style="font-weight: inherit; font-style: normal;"&gt;No&lt;/em&gt; additional contributions will be required in future years as the pension plan termination was finalized in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following table provides a reconciliation of benefit obligations, plan assets and funded status of the Pension Plan based on a &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31 &lt;/em&gt;measurement date:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accumulated benefit obligation at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;65,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Change in projected benefit obligation&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Projected benefit obligation at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;65,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;72,631&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,401&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,575&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net actuarial (gain) loss&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,452&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(6,820&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Benefits paid&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(31,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Annuities purchased&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(40,510&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Projected benefit obligation at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;65,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Change in plan assets&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Fair value of plan assets at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;58,014&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Actual return on plan assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,944&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,507&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Company contributions&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,017&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,771&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Benefits paid&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(31,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Annuities purchased&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(40,510&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Fair value of plan assets at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Funded status: accrued pension liability included in other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(4,108&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Amounts recognized in accumulated other comprehensive loss&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net actuarial loss, net of tax&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The actuarial loss for the Pension Plan that was amortized from AOCL into net periodic pension cost during &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; prior to the pension plan termination was $843.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The actuarial assumption used in the determination of the benefit obligation of the above data is:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average discount rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4.24%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The following table sets forth the components of net periodic pension cost (benefit) for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017:&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 55%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,401&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,575&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,688&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Expected return on plan assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,500&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,525&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,011&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amortization of net loss&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;843&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;883&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on pension settlement&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,920&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net periodic pension cost (benefit)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;10,664&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(148&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;560&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Weighted-average assumptions used to determine net periodic pension cost (benefit) are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Discount Rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4.24%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;3.60%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4.14%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Expected long-term rate of return on plan assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;6.60%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;6.19%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;6.58%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Rate of compensation increase (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;
   &lt;table cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 9pt; margin-left: 0pt; margin-right: 0pt;"&gt;
    &lt;tbody&gt;
     &lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 9pt;"&gt;
      &lt;td colspan="1" style="vertical-align: middle; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 9pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 9pt; margin: 0pt; text-align: left;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&#160; &lt;em style="font-weight: inherit; font-style: normal;"&gt;No&lt;/em&gt; compensation increase was assumed as the Pension Plan was frozen effective &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2008.&lt;/em&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;To determine the long-term rate of return assumption for the plans&#x2019; assets, the Company studied historical markets and preserved the long-term historical relationship between equities and fixed-income securities consistent with the widely accepted capital market principle that assets with higher volatility generate a greater return over the long run. The Company evaluated current market factors such as inflation and interest rates before it determined long-term capital market assumptions and reviewed peer data and historical returns to check for reasonableness and appropriateness.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The fair value of the qualified pension plan assets was $0 at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December&#160;&lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;31,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; and $61,870 at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018. &lt;/em&gt;The Pension Plan&#x2019;s weighted-average asset allocation at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018, &lt;/em&gt;by asset category, is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Target Allocation&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 44%; border-bottom: thin solid rgb(0, 0, 0);"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Asset Category&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Minimum&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Maximum&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Dollars&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;%&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Fixed income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic equity&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;36.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;30,731&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;50&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International equity&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;17.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,380&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Real estate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;6,502&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;100&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The fair values of the Pension Plans&#x2019; assets at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;were as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Quoted Prices in Active Markets for Identical Asset&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;(Level 1)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Significant Observable Inputs&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;(Level 2)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Significant Unobservable Inputs&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;(Level 3)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Mutual funds&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;51,736&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;51,736&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Other investments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt; margin-left: 27pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;51,736&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;A reconciliation of beginning and ending balances for Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt; assets for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2018 &lt;/em&gt;is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;201&lt;/b&gt;&lt;b&gt;8&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,700&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Purchases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Redemptions&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,795&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Realized gains&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;424&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Mutual Funds&lt;/i&gt;&lt;/b&gt; &#x2013; This category includes investments in mutual funds that encompass both equity and fixed income securities that are designed to provide a diverse portfolio. The plans&#x2019; mutual funds are designed to track exchange indices, and invest in diverse industries. Some mutual funds are classified as regulated investment companies. Investment managers have the ability to shift investments from value to growth strategies, from small to large capitalization funds, and from U.S. to international investments. These investments are valued at the closing price reported on the active market on which the individual securities are traded. These investments are classified within Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt; of the fair value hierarchy.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Other Investments&lt;/i&gt;&lt;/b&gt; &#x2013; This category includes investments in limited partnerships and are valued at estimated fair value, as determined with the assistance of each respective limited partnership, based on the net asset value of the investment as of the balance sheet date, which is subject to judgment, and therefore is classified within Level &lt;em style="font-weight: inherit; font-style: normal;"&gt;3&lt;/em&gt; of the fair value hierarchy.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company&#x2019;s historical target allocation for equity securities and real estate was generally between 75% to 85%, with the remainder allocated primarily to fixed income (bonds). The Company regularly reviewed its actual asset allocation and periodically rebalanced its investments to the targeted allocation when considered appropriate.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;"&gt;Certain of the Company&#x2019;s foreign subsidiaries participate in local statutory defined benefit or other post-employment benefit plans. These plans provide benefits that are generally based on years of credited service and a percentage of the employee&#x2019;s eligible compensation earned throughout the applicable service period. Liabilities recorded under these plans are included in other long-term liabilities in the Company&#x2019;s consolidated balance sheets and are &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; material.&lt;/p&gt;
  </us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <gnrc:EmployerContributionUnderMedicalAndDentalPlan
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032737"
      unitRef="USD">18290000</gnrc:EmployerContributionUnderMedicalAndDentalPlan>
    <gnrc:EmployerContributionUnderMedicalAndDentalPlan
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032738"
      unitRef="USD">14660000</gnrc:EmployerContributionUnderMedicalAndDentalPlan>
    <gnrc:EmployerContributionUnderMedicalAndDentalPlan
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032739"
      unitRef="USD">14992000</gnrc:EmployerContributionUnderMedicalAndDentalPlan>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"
      decimals="1"
      id="c56032744"
      unitRef="Pure">0.50</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <gnrc:DefinedContributionPlanPercentageOfEligibleCompensation
      contextRef="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"
      decimals="2"
      id="c56032746"
      unitRef="Pure">0.06</gnrc:DefinedContributionPlanPercentageOfEligibleCompensation>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"
      decimals="-3"
      id="c56032747"
      unitRef="USD">4791000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="d_2018-01-01_2018-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"
      decimals="-3"
      id="c56032748"
      unitRef="USD">4193000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="d_2017-01-01_2017-12-31_RetirementPlanTypeAxis-SavingsPlan401kMember"
      decimals="-5"
      id="c56032749"
      unitRef="USD">3600000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedBenefitPlanSettlementsBenefitObligation
      contextRef="d_2019-10-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"
      decimals="-4"
      id="c56032760"
      unitRef="USD">10920000</us-gaap:DefinedBenefitPlanSettlementsBenefitObligation>
    <us-gaap:PensionContributions
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-5"
      id="c56032764"
      unitRef="USD">9400000</us-gaap:PensionContributions>
    <us-gaap:PensionContributions
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032765"
      unitRef="USD">1017000</us-gaap:PensionContributions>
    <us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434692">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Accumulated benefit obligation at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;65,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Change in projected benefit obligation&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Projected benefit obligation at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;65,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;72,631&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,401&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,575&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net actuarial (gain) loss&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,452&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(6,820&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Benefits paid&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(31,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Annuities purchased&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(40,510&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Projected benefit obligation at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;65,978&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Change in plan assets&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Fair value of plan assets at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;58,014&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Actual return on plan assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;8,944&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,507&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Company contributions&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,017&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,771&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Benefits paid&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(31,321&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,408&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Annuities purchased&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(40,510&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Fair value of plan assets at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Funded status: accrued pension liability included in other long-term liabilities&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(4,108&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Amounts recognized in accumulated other comprehensive loss&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net actuarial loss, net of tax&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(10,541&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock>
    <us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032786"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation>
    <us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032787"
      unitRef="USD">65978000</us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032789"
      unitRef="USD">65978000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032790"
      unitRef="USD">72631000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032791"
      unitRef="USD">2401000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032792"
      unitRef="USD">2575000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032793"
      unitRef="USD">-3452000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanActuarialGainLoss
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-4"
      id="c56032794"
      unitRef="USD">6820000</us-gaap:DefinedBenefitPlanActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032795"
      unitRef="USD">31321000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032796"
      unitRef="USD">2408000</us-gaap:DefinedBenefitPlanBenefitObligationBenefitsPaid>
    <gnrc:DefinedBenefitPlanBenefitObligationAnnuitiesPurchased
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032797"
      unitRef="USD">40510000</gnrc:DefinedBenefitPlanBenefitObligationAnnuitiesPurchased>
    <gnrc:DefinedBenefitPlanBenefitObligationAnnuitiesPurchased
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032798"
      unitRef="USD">-0</gnrc:DefinedBenefitPlanBenefitObligationAnnuitiesPurchased>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032799"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanBenefitObligation
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032800"
      unitRef="USD">65978000</us-gaap:DefinedBenefitPlanBenefitObligation>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032802"
      unitRef="USD">61870000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56032803"
      unitRef="USD">58014000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032804"
      unitRef="USD">8944000</us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032805"
      unitRef="USD">-3507000</us-gaap:DefinedBenefitPlanActualReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032806"
      unitRef="USD">1017000</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032807"
      unitRef="USD">9771000</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032808"
      unitRef="USD">31321000</us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid>
    <us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032809"
      unitRef="USD">2408000</us-gaap:DefinedBenefitPlanPlanAssetsBenefitsPaid>
    <gnrc:DefinedBenefitPlanPlanAssetsAnnuitiesPurchased
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032810"
      unitRef="USD">40510000</gnrc:DefinedBenefitPlanPlanAssetsAnnuitiesPurchased>
    <gnrc:DefinedBenefitPlanPlanAssetsAnnuitiesPurchased
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032811"
      unitRef="USD">-0</gnrc:DefinedBenefitPlanPlanAssetsAnnuitiesPurchased>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032812"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032813"
      unitRef="USD">61870000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFundedStatusOfPlan
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032814"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanFundedStatusOfPlan>
    <us-gaap:DefinedBenefitPlanFundedStatusOfPlan
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032815"
      unitRef="USD">-4108000</us-gaap:DefinedBenefitPlanFundedStatusOfPlan>
    <us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56032817"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax>
    <us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56032818"
      unitRef="USD">-10541000</us-gaap:DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"
      decimals="-3"
      id="c56032769"
      unitRef="USD">-843000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <gnrc:DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434693">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average discount rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4.24%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
      contextRef="i_2018-12-31"
      decimals="4"
      id="c56032820"
      unitRef="Pure">0.0424</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate>
    <us-gaap:ScheduleOfNetBenefitCostsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434694">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 55%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Interest cost&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,401&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,575&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,688&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Expected return on plan assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,500&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,525&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,011&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Amortization of net loss&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;843&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;883&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Loss on pension settlement&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,920&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net periodic pension cost (benefit)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;10,664&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(148&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 12%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;560&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfNetBenefitCostsTableTextBlock>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032821"
      unitRef="USD">2401000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032822"
      unitRef="USD">2575000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032823"
      unitRef="USD">2688000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-5"
      id="c56032824"
      unitRef="USD">3500000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032825"
      unitRef="USD">3525000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032826"
      unitRef="USD">3011000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032827"
      unitRef="USD">-843000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032828"
      unitRef="USD">-802000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032829"
      unitRef="USD">-883000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-4"
      id="c56032830"
      unitRef="USD">-10920000</us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1>
    <us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032831"
      unitRef="USD">-0</us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1>
    <us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-3"
      id="c56032832"
      unitRef="USD">-0</us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c56032833"
      unitRef="USD">10664000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="d_2018-01-01_2018-12-31"
      decimals="-3"
      id="c56032834"
      unitRef="USD">-148000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="d_2017-01-01_2017-12-31"
      decimals="-4"
      id="c56032835"
      unitRef="USD">560000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:ScheduleOfAssumptionsUsedTableTextBlock
      contextRef="d_2019-01-01_2019-12-31_RetirementPlanTypeAxis-NetPeriodicBenefitCostsMember"
      id="c1434695">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="10" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended December 31, &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 52%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Discount Rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4.24%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;3.60%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;4.14%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Expected long-term rate of return on plan assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;6.60%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;6.19%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;6.58%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Rate of compensation increase (1)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;N/A&lt;/em&gt;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfAssumptionsUsedTableTextBlock>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="d_2019-01-01_2019-12-31"
      decimals="4"
      id="c56032836"
      unitRef="Pure">0.0424</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="d_2018-01-01_2018-12-31"
      decimals="3"
      id="c56032837"
      unitRef="Pure">0.0360</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="d_2017-01-01_2017-12-31"
      decimals="4"
      id="c56032838"
      unitRef="Pure">0.0414</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="d_2019-01-01_2019-12-31"
      decimals="3"
      id="c56032839"
      unitRef="Pure">0.0660</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="d_2018-01-01_2018-12-31"
      decimals="4"
      id="c56032840"
      unitRef="Pure">0.0619</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="d_2017-01-01_2017-12-31"
      decimals="4"
      id="c56032841"
      unitRef="Pure">0.0658</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2019-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"
      decimals="-3"
      id="c56032775"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_RetirementPlanTypeAxis-PensionPlansDefinedBenefitMember"
      decimals="-4"
      id="c56032778"
      unitRef="USD">61870000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434696">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Target Allocation&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31, 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 44%; border-bottom: thin solid rgb(0, 0, 0);"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Asset Category&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Minimum&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Maximum&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Dollars&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;%&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Fixed income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,257&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Domestic equity&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;36.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;30,731&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;50&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;International equity&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;17.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;12,380&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Real estate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;6,502&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 11%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;100&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MinimumMember"
      decimals="2"
      id="c56032845"
      unitRef="Pure">0.150</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember_RangeAxis-MaximumMember"
      decimals="2"
      id="c56032846"
      unitRef="Pure">0.250</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember"
      decimals="-3"
      id="c56032847"
      unitRef="USD">12257000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-FixedIncomeFundsMember"
      decimals="1"
      id="c56032848"
      unitRef="Pure">0.20</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MinimumMember"
      decimals="3"
      id="c56032849"
      unitRef="Pure">0.365</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember_RangeAxis-MaximumMember"
      decimals="3"
      id="c56032850"
      unitRef="Pure">0.615</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember"
      decimals="-3"
      id="c56032851"
      unitRef="USD">30731000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-DomesticEquityMember"
      decimals="1"
      id="c56032852"
      unitRef="Pure">0.50</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MinimumMember"
      decimals="2"
      id="c56032853"
      unitRef="Pure">0.170</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember_RangeAxis-MaximumMember"
      decimals="2"
      id="c56032854"
      unitRef="Pure">0.250</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember"
      decimals="-4"
      id="c56032855"
      unitRef="USD">12380000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-InternationalEquityMember"
      decimals="1"
      id="c56032856"
      unitRef="Pure">0.20</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MinimumMember"
      decimals="2"
      id="c56032857"
      unitRef="Pure">0.070</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember_RangeAxis-MaximumMember"
      decimals="2"
      id="c56032858"
      unitRef="Pure">0.150</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember"
      decimals="-3"
      id="c56032859"
      unitRef="USD">6502000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-RealEstateMember"
      decimals="1"
      id="c56032860"
      unitRef="Pure">0.10</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032863"
      unitRef="USD">61870000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations
      contextRef="i_2018-12-31"
      decimals="0"
      id="c56032864"
      unitRef="Pure">1</us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations>
    <gnrc:ScheduleOfFairValueOfPlanAssetsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434697">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Total&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Quoted Prices in Active Markets for Identical Asset&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;(Level 1)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Significant Observable Inputs&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;(Level 2)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Significant Unobservable Inputs&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;(Level 3)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Mutual funds&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;51,736&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;51,736&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Other investments&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt; margin-left: 27pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;61,870&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;51,736&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#x2013;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ScheduleOfFairValueOfPlanAssetsTableTextBlock>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember"
      decimals="-3"
      id="c56032865"
      unitRef="USD">51736000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member"
      decimals="-3"
      id="c56032866"
      unitRef="USD">51736000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-MutualFundMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032867"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember"
      decimals="-3"
      id="c56032868"
      unitRef="USD">10134000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member"
      decimals="-3"
      id="c56032869"
      unitRef="USD">0</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032870"
      unitRef="USD">10134000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31"
      decimals="-4"
      id="c56032871"
      unitRef="USD">61870000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member"
      decimals="-3"
      id="c56032872"
      unitRef="USD">51736000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032873"
      unitRef="USD">10134000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434698">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Year Ended &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;201&lt;/b&gt;&lt;b&gt;8&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 82%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at beginning of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; border-bottom: 1px none rgb(0, 0, 0); text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;9,700&lt;/td&gt;
       &lt;td style="width: 1%; border-bottom: 1px none rgb(0, 0, 0); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Purchases&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Redemptions&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,795&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Realized gains&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;424&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Balance at end of period&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;10,134&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2017-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-5"
      id="c56032874"
      unitRef="USD">9700000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase
      contextRef="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032875"
      unitRef="USD">3805000</us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase>
    <us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale
      contextRef="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032876"
      unitRef="USD">3795000</us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale>
    <us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod
      contextRef="d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032877"
      unitRef="USD">424000</us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod>
    <us-gaap:DefinedBenefitPlanFairValueOfPlanAssets
      contextRef="i_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member"
      decimals="-3"
      id="c56032878"
      unitRef="USD">10134000</us-gaap:DefinedBenefitPlanFairValueOfPlanAssets>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MinimumMember"
      decimals="2"
      id="c56032783"
      unitRef="Pure">0.75</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
      contextRef="i_2019-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-EquityAndRealEstateMember_RangeAxis-MaximumMember"
      decimals="2"
      id="c56032784"
      unitRef="Pure">0.85</us-gaap:DefinedBenefitPlanPlanAssetsTargetAllocationPercentage>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434699">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;17.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Share Plans&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company adopted an equity incentive plan (Plan) on &lt;em style="font-weight: inherit; font-style: normal;"&gt; February 10, 2010 &lt;/em&gt;in connection with its initial public offering. The Plan, as amended, allows for granting of up to 9.1 million share-based awards to executives, directors and employees. Awards available for grant under the Plan include stock options, stock appreciation rights, restricted stock, other share-based awards and performance-based compensation awards. Total share-based compensation expense related to the Plan, net of estimated forfeitures, was $15,738, $14,563 and $10,205 for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;On &lt;em style="font-weight: inherit; font-style: normal;"&gt; June 13, 2019, &lt;/em&gt;the stockholders of Generac Holdings Inc. approved the Company&#x2019;s &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; Equity Incentive Plan (&lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; Plan). The &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; Plan allows for granting of up to 2.7 million share-based awards to executives, directors and employees. Awards available for grant under the Plan include stock options, stock appreciation rights, restricted stock, other share-based awards and performance-based compensation awards. Total share-based compensation expense related to the &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; Plan, net of estimated forfeitures, was $956&#160;for the year ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;which is recorded in operating expenses in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Stock Options&lt;/i&gt;&lt;/b&gt; - Stock options granted in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; have an exercise price of $52.07 per share; stock options granted in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; have an exercise price between $43.88 per share and $45.29 per share; and stock options granted in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; have an exercise price between $40.12 per share and $48.98 per share. Stock options vest in equal installments over &lt;span style="-sec-ix-hidden:c56032900"&gt;four&lt;/span&gt; years, subject to the grantee&#x2019;s continued employment or service and expire &lt;span style="-sec-ix-hidden:c56032901"&gt;ten&lt;/span&gt; years after the date of grant.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Stock option exercises can be net-share settled such that the Company withholds shares with value equivalent to the exercise price of the stock option awards plus the employees&#x2019; minimum statutory obligation for the applicable income and other employment taxes. Total shares withheld were 32,211, 63,817 and 9,033 in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, and were based on the value of the stock on the exercise dates. The net-share settlement has the effect of share repurchases by the Company as they reduce the number of shares that would have otherwise been issued.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Employees can also utilize a cashless for cash exercise of stock options, such that all exercised shares will be sold in the market immediately. Cash equivalent to the exercise price of the awards plus the employees&#x2019; minimum statutory tax obligations is remitted to the Company, with the remaining cash being transferred to the employee. Total net proceeds from the cashless for cash exercise of stock options were $9,395, $5,614 and $6,951 in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, and are reflected as a financing activity in the consolidated statement of cash flows.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Total payments made by the Company to the taxing authorities for the employees&#x2019; tax obligations related to stock option exercises were $3,360, $3,846 and $4,301 in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, and are reflected as a financing activity in the consolidated statements of cash flows.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The grant-date fair value of each option grant is estimated using the Black-Scholes-Merton option pricing model. The fair value is then amortized on a straight-line basis over the requisite service period of the awards, which is generally the vesting period. Use of a valuation model requires management to make certain assumptions with respect to selected model inputs. Expected volatility is calculated based on an analysis of historic volatility of the Company&#x2019;s stock price. The average expected life is based on the contractual term of the option using the simplified method. The risk-free interest rate is based on U.S. Treasury &lt;em style="font-weight: inherit; font-style: normal;"&gt;zero&lt;/em&gt;-coupon issues with a remaining term equal to the expected life assumed at the date of grant. The compensation expense recognized is net of estimated forfeitures. Forfeitures are estimated based on actual share option forfeiture history.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The weighted-average assumptions used in the Black-Scholes-Merton option pricing model for &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; are as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average grant date fair value&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19.33&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;17.86&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;16.84&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Assumptions:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Expected stock price volatility&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Risk free interest rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.52&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.60&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.92&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Expected annual dividend per share&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Expected life of options (years)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.25&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.25&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.25&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;A summary of the Company&#x2019;s stock option activity and related information for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Number of &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Options&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Weighted-Average &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Exercise Price&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Weighted-Average Remaining Contractual Term (in years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Aggregate Intrinsic Value &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;($ in thousands)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2016&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,482,964&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;27.49&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,840&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;346,421&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40.13&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(287,375&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10.58&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(69,880&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;41.12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,472,130&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33.11&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,281&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;366,231&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43.88&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(267,909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19.90&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(49,285&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43.34&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,521,167&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37.70&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,212&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;369,779&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;52.07&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(263,250&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;30.75&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(35,010&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43.79&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,592,686&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;42.04&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;93,242&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercisable as of December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;726,817&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37.78&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;45,649&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;there was $10,649 of total unrecognized compensation cost, net of expected forfeitures, related to unvested options. The cost is expected to be recognized over the remaining service period, having a weighted-average period of 2.5&#160;years. Total share-based compensation cost related to the stock options for &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; was $5,597, $4,998 and $4,503, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&lt;b&gt;&lt;i&gt;Restricted Stock&lt;/i&gt;&lt;/b&gt; &#x2013; Restricted stock awards vest in equal installments over &lt;span style="-sec-ix-hidden:c56032935"&gt;three&lt;/span&gt; years, subject to the grantee&#x2019;s continued employment or service. Certain restricted stock awards also include performance shares, which were awarded in the years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2014&lt;/em&gt; through &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019.&lt;/em&gt; The number of performance shares that can be earned are contingent upon Company performance measures over a &lt;span style="-sec-ix-hidden:c56032938"&gt;three&lt;/span&gt;-year period. Performance measures are based on a weighting of a number of financial metrics, from which grantees &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;earn from 0% to 200% of their target performance share award. The performance period for the &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; awards covers the years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; through &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; the performance period for the &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; awards covers the years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; through &lt;em style="font-weight: inherit; font-style: normal;"&gt;2020,&lt;/em&gt; and the performance period for the &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; awards covers the years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019&lt;/em&gt; through &lt;em style="font-weight: inherit; font-style: normal;"&gt;2021.&lt;/em&gt; The Company estimates the number of performance shares that will vest based on projected financial performance. The fair value of restricted awards is determined based on the market value of the Company's shares on the grant date. The fair market value of the restricted awards at the time of the grant is amortized to expense over the period of vesting. The compensation expense recognized for restricted share awards is net of estimated forfeitures.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;Restricted stock vesting is net-share settled such that, upon vesting, the Company withholds shares with value equivalent to the employees&#x2019; minimum statutory tax obligation, and then pays the cash to the taxing authorities on behalf of the employees. In effect, the Company repurchases these shares and classifies them as treasury stock. Total shares withheld were 55,953, 38,186 and 39,500 in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, and were based on the value of the stock on the vesting dates. Total payments made by the Company to the taxing authorities for the employees&#x2019; tax obligations related to restricted stock vesting&#160;were $3,078, $1,812 and $1,591 in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively, and are reflected as a financing activity within the consolidated statements of cash flows.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;
    &lt;div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;"&gt;
     &lt;em style="font-weight: inherit; font-style: normal;"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;

   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;A summary of the Company's restricted stock activity for the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; is as follows:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Shares&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Weighted-Average Grant-Date Fair Value&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2016&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;361,403&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;38.18&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;211,769&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;39.91&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vested&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(133,796&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40.60&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(47,100&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;42.48&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;392,276&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37.77&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;208,803&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44.49&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vested&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(128,433&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;39.03&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(46,650&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;39.43&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;425,996&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40.50&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;265,255&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;62.38&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vested&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(184,628&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;38.78&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(14,986&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44.23&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;491,637&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;52.84&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;As of &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;there was $16,165 of unrecognized compensation cost, net of expected forfeitures, related to non-vested restricted stock awards. That cost is expected to be recognized over the remaining service period, having a weighted-average period of 1.9 years. Total share-based compensation cost related to the restricted stock for &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; inclusive of performance shares, was $11,097, $9,565 and $5,702, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;During &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; 22,544, 33,419 and 34,095 shares of stock, respectively,&#160;were granted to certain members of the Company&#x2019;s Board of Directors as a component of their compensation for their service on the Board, of which 22,544, 33,419 and 22,762 shares, respectively, were fully vested at time of grant. Non-employee directors can elect to receive his or her director fees in the form of deferred stock units, which voluntarily defers the issuance of the related shares granted until the director separates from the Company or a triggering event occurs. 16,604, 22,675, and 11,333 of deferred stock units are included in the shares of stock granted to certain members of the Company&#x2019;s Board of Directors for the years &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018,&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017,&lt;/em&gt; respectively. Total share-based compensation cost for these share grants in &lt;em style="font-weight: inherit; font-style: normal;"&gt;2019,&lt;/em&gt; &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017&lt;/em&gt; was $1,391, $1,718 and $1,133, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.&lt;/p&gt;
  </us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i_2010-02-10"
      decimals="-5"
      id="c56032880"
      unitRef="Share">9100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2019-01-01_2019-12-31_PlanNameAxis-EquityIncentivePlanPlanMember"
      decimals="-3"
      id="c56032881"
      unitRef="USD">15738000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2018-01-01_2018-12-31_PlanNameAxis-EquityIncentivePlanPlanMember"
      decimals="-3"
      id="c56032882"
      unitRef="USD">14563000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2017-01-01_2017-12-31_PlanNameAxis-EquityIncentivePlanPlanMember"
      decimals="-3"
      id="c56032883"
      unitRef="USD">10205000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i_2019-06-13_PlanNameAxis-The2019EquityIncentivePlanMember"
      decimals="-5"
      id="c56032889"
      unitRef="Share">2700000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2019-01-01_2019-12-31_PlanNameAxis-The2019EquityIncentivePlanMember"
      decimals="-3"
      id="c56032891"
      unitRef="USD">956000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2019-01-01_2019-12-31_RangeAxis-MinimumMember"
      decimals="INF"
      id="c56032893"
      unitRef="USDPerShare">52.07</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2018-01-01_2018-12-31_RangeAxis-MinimumMember"
      decimals="INF"
      id="c56032895"
      unitRef="USDPerShare">43.88</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2018-01-01_2018-12-31_RangeAxis-MaximumMember"
      decimals="INF"
      id="c56032896"
      unitRef="USDPerShare">45.29</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2017-01-01_2017-12-31_RangeAxis-MinimumMember"
      decimals="INF"
      id="c56032898"
      unitRef="USDPerShare">40.12</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2017-01-01_2017-12-31_RangeAxis-MaximumMember"
      decimals="INF"
      id="c56032899"
      unitRef="USDPerShare">48.98</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032902"
      unitRef="Share">32211</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032903"
      unitRef="Share">63817</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032904"
      unitRef="Share">9033</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032908"
      unitRef="USD">9395000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032909"
      unitRef="USD">5614000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032910"
      unitRef="USD">6951000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-4"
      id="c56032914"
      unitRef="USD">3360000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032915"
      unitRef="USD">3846000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032916"
      unitRef="USD">4301000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434700">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;2017&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 49%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Weighted average grant date fair value&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19.33&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;17.86&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;16.84&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Assumptions:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Expected stock price volatility&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Risk free interest rate&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.52&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2.60&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.92&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Expected annual dividend per share&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;"&gt;Expected life of options (years)&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.25&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.25&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.25&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032994"
      unitRef="USDPerShare">19.33</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032995"
      unitRef="USDPerShare">17.86</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56032996"
      unitRef="USDPerShare">16.84</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="2"
      id="c56032998"
      unitRef="Pure">0.33</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="2"
      id="c56032999"
      unitRef="Pure">0.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="1"
      id="c56033000"
      unitRef="Pure">0.40</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="4"
      id="c56033001"
      unitRef="Pure">0.0252</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="3"
      id="c56033002"
      unitRef="Pure">0.0260</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="4"
      id="c56033003"
      unitRef="Pure">0.0192</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56033004"
      unitRef="USDPerShare">0</gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare>
    <gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56033005"
      unitRef="USDPerShare">0</gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare>
    <gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="INF"
      id="c56033006"
      unitRef="USDPerShare">0</gnrc:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c56033007">P6Y3M</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c56033008">P6Y3M</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c56033009">P6Y3M</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434701">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Number of &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Options&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Weighted-Average &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Exercise Price&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Weighted-Average Remaining Contractual Term (in years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Aggregate Intrinsic Value &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;($ in thousands)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2016&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,482,964&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;27.49&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.5&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,840&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;346,421&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40.13&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(287,375&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10.58&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(69,880&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;41.12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,472,130&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33.11&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;25,281&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;366,231&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43.88&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(267,909&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19.90&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(49,285&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43.34&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,521,167&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37.70&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;7.0&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;19,212&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;369,779&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;52.07&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(263,250&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;30.75&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(35,010&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;43.79&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Outstanding as of December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,592,686&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;42.04&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6.9&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;93,242&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Exercisable as of December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;726,817&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37.78&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5.3&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;45,649&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2016-12-31"
      decimals="INF"
      id="c56033010"
      unitRef="Share">1482964</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2016-12-31"
      decimals="INF"
      id="c56033011"
      unitRef="USDPerShare">27.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="d_2016-01-01_2016-12-31" id="c56033012">P7Y6M</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i_2016-12-31"
      decimals="-4"
      id="c56033013"
      unitRef="USD">23840000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033014"
      unitRef="Share">346421</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033015"
      unitRef="USDPerShare">40.13</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033018"
      unitRef="Share">287375</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033019"
      unitRef="USDPerShare">10.58</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033022"
      unitRef="Share">69880</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033023"
      unitRef="USDPerShare">41.12</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2017-12-31"
      decimals="INF"
      id="c56033026"
      unitRef="Share">1472130</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2017-12-31"
      decimals="INF"
      id="c56033027"
      unitRef="USDPerShare">33.11</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="d_2017-01-01_2017-12-31" id="c56033028">P7Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i_2017-12-31"
      decimals="-3"
      id="c56033029"
      unitRef="USD">25281000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033030"
      unitRef="Share">366231</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033031"
      unitRef="USDPerShare">43.88</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033034"
      unitRef="Share">267909</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033035"
      unitRef="USDPerShare">19.90</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033038"
      unitRef="Share">49285</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033039"
      unitRef="USDPerShare">43.34</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56033042"
      unitRef="Share">1521167</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56033043"
      unitRef="USDPerShare">37.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="d_2018-01-01_2018-12-31" id="c56033044">P7Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i_2018-12-31"
      decimals="-3"
      id="c56033045"
      unitRef="USD">19212000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033046"
      unitRef="Share">369779</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033047"
      unitRef="USDPerShare">52.07</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033050"
      unitRef="Share">263250</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033051"
      unitRef="USDPerShare">30.75</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033054"
      unitRef="Share">35010</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033055"
      unitRef="USDPerShare">43.79</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56033058"
      unitRef="Share">1592686</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56033059"
      unitRef="USDPerShare">42.04</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="d_2019-01-01_2019-12-31" id="c56033060">P6Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56033061"
      unitRef="USD">93242000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56033062"
      unitRef="Share">726817</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56033063"
      unitRef="USDPerShare">37.78</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="d_2019-01-01_2019-12-31" id="c56033064">P5Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i_2019-12-31"
      decimals="-3"
      id="c56033065"
      unitRef="USD">45649000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032927"
      unitRef="USD">10649000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c56032928">P2Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032932"
      unitRef="USD">5597000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032933"
      unitRef="USD">4998000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="-3"
      id="c56032934"
      unitRef="USD">4503000</us-gaap:AllocatedShareBasedCompensationExpense>
    <gnrc:PerformanceShareAwardPercentage
      contextRef="i_2019-12-31_RangeAxis-MinimumMember"
      decimals="-3"
      id="c56032939"
      unitRef="Pure">0</gnrc:PerformanceShareAwardPercentage>
    <gnrc:PerformanceShareAwardPercentage
      contextRef="i_2019-12-31_RangeAxis-MaximumMember"
      decimals="0"
      id="c56032940"
      unitRef="Pure">2</gnrc:PerformanceShareAwardPercentage>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="INF"
      id="c56032950"
      unitRef="Share">55953</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="INF"
      id="c56032951"
      unitRef="Share">38186</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="INF"
      id="c56032952"
      unitRef="Share">39500</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="-3"
      id="c56032956"
      unitRef="USD">3078000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="-3"
      id="c56032957"
      unitRef="USD">1812000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="-3"
      id="c56032958"
      unitRef="USD">1591000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434702">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Shares&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Weighted-Average Grant-Date Fair Value&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2016&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;361,403&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;38.18&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;211,769&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;39.91&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vested&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(133,796&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40.60&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(47,100&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;42.48&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;392,276&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;37.77&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;208,803&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44.49&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vested&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(128,433&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;39.03&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(46,650&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;39.43&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;425,996&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;40.50&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Granted&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;265,255&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;62.38&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Vested&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(184,628&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;38.78&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Forfeited&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(14,986&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44.23&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-vested as of December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;491,637&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;52.84&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i_2016-12-31"
      decimals="INF"
      id="c56033066"
      unitRef="Share">361403</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i_2016-12-31"
      decimals="INF"
      id="c56033067"
      unitRef="USDPerShare">38.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033068"
      unitRef="Share">211769</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033069"
      unitRef="USDPerShare">39.91</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033070"
      unitRef="Share">133796</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033071"
      unitRef="USDPerShare">40.60</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033072"
      unitRef="Share">47100</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="d_2017-01-01_2017-12-31"
      decimals="INF"
      id="c56033073"
      unitRef="USDPerShare">42.48</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i_2017-12-31"
      decimals="INF"
      id="c56033074"
      unitRef="Share">392276</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i_2017-12-31"
      decimals="INF"
      id="c56033075"
      unitRef="USDPerShare">37.77</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033076"
      unitRef="Share">208803</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033077"
      unitRef="USDPerShare">44.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033078"
      unitRef="Share">128433</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033079"
      unitRef="USDPerShare">39.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033080"
      unitRef="Share">46650</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="d_2018-01-01_2018-12-31"
      decimals="INF"
      id="c56033081"
      unitRef="USDPerShare">39.43</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56033082"
      unitRef="Share">425996</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i_2018-12-31"
      decimals="INF"
      id="c56033083"
      unitRef="USDPerShare">40.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033084"
      unitRef="Share">265255</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033085"
      unitRef="USDPerShare">62.38</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033086"
      unitRef="Share">184628</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033087"
      unitRef="USDPerShare">38.78</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033088"
      unitRef="Share">14986</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c56033089"
      unitRef="USDPerShare">44.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56033090"
      unitRef="Share">491637</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c56033091"
      unitRef="USDPerShare">52.84</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2019-12-31_AwardTypeAxis-RestrictedStockMember"
      decimals="-3"
      id="c56032965"
      unitRef="USD">16165000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockMember"
      id="c56032966">P1Y10M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2019-01-01_2019-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember"
      decimals="-3"
      id="c56032970"
      unitRef="USD">11097000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2018-01-01_2018-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember"
      decimals="-3"
      id="c56032971"
      unitRef="USD">9565000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2017-01-01_2017-12-31_AwardTypeAxis-RestrictedStockAndPerformanceSharesMember"
      decimals="-3"
      id="c56032972"
      unitRef="USD">5702000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued
      contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032976"
      unitRef="Share">22544</us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued>
    <us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued
      contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032977"
      unitRef="Share">33419</us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued>
    <us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued
      contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032978"
      unitRef="Share">34095</us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued>
    <gnrc:DeferredCompensationArrangementWithIndividualSharesVested
      contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032979"
      unitRef="Share">22544</gnrc:DeferredCompensationArrangementWithIndividualSharesVested>
    <gnrc:DeferredCompensationArrangementWithIndividualSharesVested
      contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032980"
      unitRef="Share">33419</gnrc:DeferredCompensationArrangementWithIndividualSharesVested>
    <gnrc:DeferredCompensationArrangementWithIndividualSharesVested
      contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032981"
      unitRef="Share">22762</gnrc:DeferredCompensationArrangementWithIndividualSharesVested>
    <gnrc:DeferredCompensationArrangementWithIndividualSharesGranted
      contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032982"
      unitRef="Share">16604</gnrc:DeferredCompensationArrangementWithIndividualSharesGranted>
    <gnrc:DeferredCompensationArrangementWithIndividualSharesGranted
      contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032983"
      unitRef="Share">22675</gnrc:DeferredCompensationArrangementWithIndividualSharesGranted>
    <gnrc:DeferredCompensationArrangementWithIndividualSharesGranted
      contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="INF"
      id="c56032984"
      unitRef="Share">11333</gnrc:DeferredCompensationArrangementWithIndividualSharesGranted>
    <us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense
      contextRef="d_2019-01-01_2019-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="-3"
      id="c56032991"
      unitRef="USD">1391000</us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense>
    <us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense
      contextRef="d_2018-01-01_2018-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="-3"
      id="c56032992"
      unitRef="USD">1718000</us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense>
    <us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense
      contextRef="d_2017-01-01_2017-12-31_TitleOfIndividualAxis-BoardOfDirectorsChairmanMember"
      decimals="-3"
      id="c56032993"
      unitRef="USD">1133000</us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434703">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;18.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Commitments and Contingencies&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company has an arrangement with a finance company to provide floor plan financing for certain dealers. The Company receives payment from the finance company after shipment of product to the dealer. The Company participates in the cost of dealer financing up to certain limits and has agreed to repurchase products repossessed by the finance company, but does &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; indemnify the finance company for any credit losses they incur. The amount financed by dealers which remained outstanding under this arrangement at &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019 &lt;/em&gt;and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; was approximately $49,600 and $47,200, respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;In the normal course of business, the Company is named as a defendant in various lawsuits in which claims are asserted against the Company. In the opinion of management, the liabilities, if any, which &lt;em style="font-weight: inherit; font-style: normal;"&gt; may &lt;/em&gt;result from such lawsuits are &lt;em style="font-weight: inherit; font-style: normal;"&gt;not&lt;/em&gt; expected to have a material adverse effect on the financial position, results of operations, or cash flows of the Company.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"/&gt;&lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;&lt;div class="PGHDR" style="text-align: left; width: 100%"&gt;&lt;a href="#toc" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;
  </us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <gnrc:AmountFinancedByDealers
      contextRef="i_2019-12-31"
      decimals="-5"
      id="c56033095"
      unitRef="USD">49600000</gnrc:AmountFinancedByDealers>
    <gnrc:AmountFinancedByDealers
      contextRef="i_2018-12-31"
      decimals="-5"
      id="c56033096"
      unitRef="USD">47200000</gnrc:AmountFinancedByDealers>
    <us-gaap:QuarterlyFinancialInformationTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434704">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;19.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Quarterly Financial Information (Unaudited)&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Quarters Ended 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q1&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q2&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q3&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q4&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;470,353&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;541,916&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;601,135&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;590,932&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Gross profit&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;162,175&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;195,838&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;217,517&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;222,222&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;71,173&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;90,926&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;105,556&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;104,508&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44,861&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,958&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75,574&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;69,614&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - basic:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.77&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.99&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.14&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - diluted:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.76&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.98&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.18&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 605px;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Quarters Ended 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q1&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q2&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q3&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 132px;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q4&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;400,091&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;497,581&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;562,388&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;563,404&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Gross profit&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;141,927&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;178,473&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;200,334&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;204,306&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;56,347&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;85,467&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;106,519&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;108,848&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33,645&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;53,261&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75,776&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75,575&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - basic:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.42&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.83&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.21&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - diluted:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.42&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.82&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.11&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.20&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

  </us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="d_2019-01-01_2019-12-31"
      id="C34C5401-32FF-44C1-A6C8-655584036379">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Quarters Ended 2019&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q1&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q2&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q3&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q4&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;470,353&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;541,916&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;601,135&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;590,932&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Gross profit&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;162,175&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;195,838&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;217,517&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;222,222&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;71,173&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;90,926&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;105,556&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;104,508&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;44,861&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;61,958&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75,574&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;69,614&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - basic:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.77&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.99&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.20&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.14&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - diluted:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.76&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.98&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.18&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 605px;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Quarters Ended 2018&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q1&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q2&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q3&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 132px;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Q4&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;400,091&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;497,581&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;562,388&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;563,404&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Gross profit&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;141,927&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;178,473&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;200,334&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;204,306&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Operating income&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;56,347&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;85,467&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;106,519&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;108,848&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net income attributable to Generac Holdings Inc.&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;33,645&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;53,261&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75,776&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;75,575&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - basic:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.42&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.83&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.12&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.21&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;"&gt;Net income attributable to common shareholders per common share - diluted:&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.42&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;0.82&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 10%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.11&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 120px; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1.20&lt;/td&gt;
       &lt;td style="width: 9px; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-01-01_2019-03-31"
      decimals="-3"
      id="c56033100"
      unitRef="USD">470353000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-04-01_2019-06-30"
      decimals="-3"
      id="c56033101"
      unitRef="USD">541916000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-07-01_2019-09-30"
      decimals="-3"
      id="c56033102"
      unitRef="USD">601135000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56033103"
      unitRef="USD">590932000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="d_2019-01-01_2019-03-31"
      decimals="-3"
      id="c56033104"
      unitRef="USD">162175000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2019-04-01_2019-06-30"
      decimals="-3"
      id="c56033105"
      unitRef="USD">195838000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2019-07-01_2019-09-30"
      decimals="-3"
      id="c56033106"
      unitRef="USD">217517000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56033107"
      unitRef="USD">222222000</us-gaap:GrossProfit>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2019-01-01_2019-03-31"
      decimals="-3"
      id="c56033108"
      unitRef="USD">71173000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2019-04-01_2019-06-30"
      decimals="-3"
      id="c56033109"
      unitRef="USD">90926000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2019-07-01_2019-09-30"
      decimals="-3"
      id="c56033110"
      unitRef="USD">105556000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56033111"
      unitRef="USD">104508000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-01-01_2019-03-31"
      decimals="-3"
      id="c56033112"
      unitRef="USD">44861000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-04-01_2019-06-30"
      decimals="-3"
      id="c56033113"
      unitRef="USD">61958000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-07-01_2019-09-30"
      decimals="-3"
      id="c56033114"
      unitRef="USD">75574000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2019-10-01_2019-12-31"
      decimals="-3"
      id="c56033115"
      unitRef="USD">69614000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2019-01-01_2019-03-31"
      decimals="INF"
      id="c56033116"
      unitRef="USDPerShare">0.77</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2019-04-01_2019-06-30"
      decimals="INF"
      id="c56033117"
      unitRef="USDPerShare">0.99</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2019-07-01_2019-09-30"
      decimals="INF"
      id="c56033118"
      unitRef="USDPerShare">1.20</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2019-10-01_2019-12-31"
      decimals="INF"
      id="c56033119"
      unitRef="USDPerShare">1.14</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-01-01_2019-03-31"
      decimals="INF"
      id="c56033120"
      unitRef="USDPerShare">0.76</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-04-01_2019-06-30"
      decimals="INF"
      id="c56033121"
      unitRef="USDPerShare">0.98</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-07-01_2019-09-30"
      decimals="INF"
      id="c56033122"
      unitRef="USDPerShare">1.18</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2019-10-01_2019-12-31"
      decimals="INF"
      id="c56033123"
      unitRef="USDPerShare">1.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-01-01_2018-03-31"
      decimals="-3"
      id="c56033124"
      unitRef="USD">400091000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-04-01_2018-06-30"
      decimals="-3"
      id="c56033125"
      unitRef="USD">497581000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-07-01_2018-09-30"
      decimals="-3"
      id="c56033126"
      unitRef="USD">562388000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="d_2018-10-01_2018-12-31"
      decimals="-3"
      id="c56033127"
      unitRef="USD">563404000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="d_2018-01-01_2018-03-31"
      decimals="-3"
      id="c56033128"
      unitRef="USD">141927000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2018-04-01_2018-06-30"
      decimals="-3"
      id="c56033129"
      unitRef="USD">178473000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2018-07-01_2018-09-30"
      decimals="-3"
      id="c56033130"
      unitRef="USD">200334000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2018-10-01_2018-12-31"
      decimals="-3"
      id="c56033131"
      unitRef="USD">204306000</us-gaap:GrossProfit>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2018-01-01_2018-03-31"
      decimals="-3"
      id="c56033132"
      unitRef="USD">56347000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2018-04-01_2018-06-30"
      decimals="-3"
      id="c56033133"
      unitRef="USD">85467000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2018-07-01_2018-09-30"
      decimals="-3"
      id="c56033134"
      unitRef="USD">106519000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2018-10-01_2018-12-31"
      decimals="-3"
      id="c56033135"
      unitRef="USD">108848000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-01-01_2018-03-31"
      decimals="-3"
      id="c56033136"
      unitRef="USD">33645000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-04-01_2018-06-30"
      decimals="-3"
      id="c56033137"
      unitRef="USD">53261000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-07-01_2018-09-30"
      decimals="-3"
      id="c56033138"
      unitRef="USD">75776000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2018-10-01_2018-12-31"
      decimals="-3"
      id="c56033139"
      unitRef="USD">75575000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2018-01-01_2018-03-31"
      decimals="INF"
      id="c56033140"
      unitRef="USDPerShare">0.42</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2018-04-01_2018-06-30"
      decimals="INF"
      id="c56033141"
      unitRef="USDPerShare">0.83</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2018-07-01_2018-09-30"
      decimals="INF"
      id="c56033142"
      unitRef="USDPerShare">1.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2018-10-01_2018-12-31"
      decimals="INF"
      id="c56033143"
      unitRef="USDPerShare">1.21</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-01-01_2018-03-31"
      decimals="INF"
      id="c56033144"
      unitRef="USDPerShare">0.42</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-04-01_2018-06-30"
      decimals="INF"
      id="c56033145"
      unitRef="USDPerShare">0.82</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-07-01_2018-09-30"
      decimals="INF"
      id="c56033146"
      unitRef="USDPerShare">1.11</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2018-10-01_2018-12-31"
      decimals="INF"
      id="c56033147"
      unitRef="USDPerShare">1.20</us-gaap:EarningsPerShareDiluted>
    <srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434707">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;20.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Valuation and Qualifying Accounts&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;For the years ended &lt;em style="font-weight: inherit; font-style: normal;"&gt; December 31, 2019, &lt;/em&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;2018&lt;/em&gt; and &lt;em style="font-weight: inherit; font-style: normal;"&gt;2017:&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Balance at Beginning of Year&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Additions Charged to Earnings&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Charges to Reserve, Net (1)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Reserves Established for Acquisitions&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Balance at End of Year&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 40%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Year ended December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Allowance for doubtful accounts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,873&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,086&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,033&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;42&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,968&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Reserves for inventory&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,140&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,821&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,867&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;199&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;24,293&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Valuation of deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(778&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,024&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Year ended December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Allowance for doubtful accounts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,941&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,123&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;250&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,873&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Reserves for inventory&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,987&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,004&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,720&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;869&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,140&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Valuation of deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,817&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;478&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,493&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Year ended December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Allowance for doubtful accounts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,642&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;346&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,842&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;659&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Reserves for inventory&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,031&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,164&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(4,036&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;828&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,987&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Valuation of deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,362&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,455&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,817&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;

   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"&gt;&#160;&lt;/p&gt;
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;"&gt;&#160;&lt;/td&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;(&lt;em style="font-weight: inherit; font-style: normal;"&gt;1&lt;/em&gt;)&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;Deductions from the allowance for doubtful accounts equal accounts receivable written off against the allowance, less recoveries. Deductions from the reserves for inventory excess and obsolete items equal inventory written off against the reserve as items were disposed of.&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
  </srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock>
    <gnrc:ValuationAndQualifyingAccountsTableTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434708">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px;"&gt;
     &lt;tbody&gt;
      &lt;tr style="vertical-align: bottom;"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Balance at Beginning of Year&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Additions Charged to Earnings&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Charges to Reserve, Net (1)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Reserves Established for Acquisitions&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"&gt;&lt;b&gt;&lt;b&gt;Balance at End of Year&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 40%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Year ended December 31, 2019&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Allowance for doubtful accounts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,873&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3,086&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,033&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;42&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,968&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Reserves for inventory&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,140&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,821&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,867&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;199&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;24,293&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Valuation of deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(778&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,024&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Year ended December 31, 2018&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Allowance for doubtful accounts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;1,941&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(2,123&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;250&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,873&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Reserves for inventory&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,987&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;10,004&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(3,720&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;869&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;23,140&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Valuation of deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,817&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;478&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,493&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,802&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
       &lt;td&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;Year ended December 31, 2017&lt;/p&gt; &lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Allowance for doubtful accounts&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;5,642&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;346&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(1,842&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;659&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,805&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Reserves for inventory&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,031&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,164&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;(4,036&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;828&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;15,987&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
       &lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Valuation of deferred tax assets&lt;/p&gt; &lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4,362&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;2,455&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
       &lt;td style="width: 9%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;6,817&lt;/td&gt;
       &lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
      &lt;/tr&gt;
     &lt;/tbody&gt;
    &lt;/table&gt;
   </gnrc:ValuationAndQualifyingAccountsTableTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033153"
      unitRef="USD">4873000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033154"
      unitRef="USD">3086000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033155"
      unitRef="USD">-1033000</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033156"
      unitRef="USD">42000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033157"
      unitRef="USD">6968000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-4"
      id="c56033158"
      unitRef="USD">23140000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033159"
      unitRef="USD">4821000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033160"
      unitRef="USD">-3867000</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033161"
      unitRef="USD">199000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033162"
      unitRef="USD">24293000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033163"
      unitRef="USD">5802000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033164"
      unitRef="USD">0</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033165"
      unitRef="USD">0</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2019-01-01_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033166"
      unitRef="USD">-778000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2019-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033167"
      unitRef="USD">5024000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033169"
      unitRef="USD">4805000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033170"
      unitRef="USD">1941000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033171"
      unitRef="USD">-2123000</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-4"
      id="c56033172"
      unitRef="USD">250000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033173"
      unitRef="USD">4873000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033174"
      unitRef="USD">15987000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033175"
      unitRef="USD">10004000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-4"
      id="c56033176"
      unitRef="USD">-3720000</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033177"
      unitRef="USD">869000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-4"
      id="c56033178"
      unitRef="USD">23140000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033179"
      unitRef="USD">6817000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033180"
      unitRef="USD">478000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033181"
      unitRef="USD">0</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2018-01-01_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033182"
      unitRef="USD">-1493000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033183"
      unitRef="USD">5802000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033185"
      unitRef="USD">5642000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033186"
      unitRef="USD">346000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033187"
      unitRef="USD">-1842000</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033188"
      unitRef="USD">659000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember"
      decimals="-3"
      id="c56033189"
      unitRef="USD">4805000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033190"
      unitRef="USD">13031000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033191"
      unitRef="USD">6164000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033192"
      unitRef="USD">-4036000</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033193"
      unitRef="USD">828000</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-InventoryValuationReserveMember"
      decimals="-3"
      id="c56033194"
      unitRef="USD">15987000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033195"
      unitRef="USD">4362000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033196"
      unitRef="USD">2455000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033197"
      unitRef="USD">0</us-gaap:ValuationAllowancesAndReservesPeriodIncreaseDecrease>
    <gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired
      contextRef="d_2017-01-01_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033198"
      unitRef="USD">0</gnrc:SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i_2017-12-31_ValuationAllowancesAndReservesTypeAxis-ValuationAllowanceOfDeferredTaxAssetsMember"
      decimals="-3"
      id="c56033199"
      unitRef="USD">6817000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:SubsequentEventsTextBlock contextRef="d_2019-01-01_2019-12-31" id="c1434709">
   &lt;table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;"&gt;
    &lt;tbody&gt;
     &lt;tr&gt;
      &lt;td style="width:18pt;vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;&lt;em style="font-weight: inherit; font-style: normal;"&gt;21.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
      &lt;td style="vertical-align:top;"&gt; &lt;p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"&gt;&lt;b&gt;Subsequent Events&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;
     &lt;/tr&gt;
    &lt;/tbody&gt;
   &lt;/table&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"&gt;The Company performed an evaluation of subsequent events through the date these financial statements were issued and &lt;em style="font-weight: inherit; font-style: normal;"&gt;no&lt;/em&gt; such events were identified.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/&gt;&lt;div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"&gt;&lt;div class="PGHDR" style="text-align: left; width: 100%"&gt;&lt;a href="#toc" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt"/&gt;
    &lt;/div&gt;
   &lt;/div&gt;
  </us-gaap:SubsequentEventsTextBlock>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#c56032283"
          xlink:label="c56032283"
          xlink:type="locator"/>
        <link:footnote id="f29bd9376-4555-401c-8f4f-77bb68028bc7" xlink:label="f29bd9376-4555-401c-8f4f-77bb68028bc7" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Recorded in the other accrued liabilities line</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032283"
          xlink:to="f29bd9376-4555-401c-8f4f-77bb68028bc7"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56033187"
          xlink:label="c56033187"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033197"
          xlink:label="c56033197"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033155"
          xlink:label="c56033155"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033181"
          xlink:label="c56033181"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033160"
          xlink:label="c56033160"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033176"
          xlink:label="c56033176"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033192"
          xlink:label="c56033192"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033165"
          xlink:label="c56033165"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56033171"
          xlink:label="c56033171"
          xlink:type="locator"/>
        <link:footnote id="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274" xlink:label="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Deductions from the allowance for doubtful accounts equal accounts receivable written off against the allowance, less recoveries. Deductions from the reserves for inventory excess and obsolete items equal inventory written off against the reserve as items were disposed of.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033187"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033197"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033155"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033181"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033160"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033176"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033192"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033165"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56033171"
          xlink:to="fa3f0f01d-3be4-4a15-bbc6-2fa9d058d274"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031974"
          xlink:label="c56031974"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031973"
          xlink:label="c56031973"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031972"
          xlink:label="c56031972"
          xlink:type="locator"/>
        <link:footnote id="f84107ac1-3555-4c1a-9359-fe167c7af8e2" xlink:label="f84107ac1-3555-4c1a-9359-fe167c7af8e2" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents share-based compensation expense to account for stock options, restricted stock and other stock awards over their respective vesting periods.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031974"
          xlink:to="f84107ac1-3555-4c1a-9359-fe167c7af8e2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031973"
          xlink:to="f84107ac1-3555-4c1a-9359-fe167c7af8e2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031972"
          xlink:to="f84107ac1-3555-4c1a-9359-fe167c7af8e2"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031730"
          xlink:label="c56031730"
          xlink:type="locator"/>
        <link:footnote id="f16fca019-36c3-469b-9cee-ef9089cf0b37" xlink:label="f16fca019-36c3-469b-9cee-ef9089cf0b37" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents the noncontrolling interest of Captiva Energy calculated at the date of acquisition, February 1, 2019.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031730"
          xlink:to="f16fca019-36c3-469b-9cee-ef9089cf0b37"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031980"
          xlink:label="c56031980"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031979"
          xlink:label="c56031979"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031978"
          xlink:label="c56031978"
          xlink:type="locator"/>
        <link:footnote id="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47" xlink:label="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents pre-tax settlement charges related to the termination of the Company&#x2019;s domestic pension plan in the fourth quarter of 2019.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031980"
          xlink:to="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031979"
          xlink:to="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031978"
          xlink:to="f1cab1d83-c79c-4710-9d21-7ab0f5c8fa47"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031831"
          xlink:label="c56031831"
          xlink:type="locator"/>
        <link:footnote id="fe0f611c3-28f4-4654-acdd-2fb3781618e4" xlink:label="fe0f611c3-28f4-4654-acdd-2fb3781618e4" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Details of reclassifications from AOCL during 2019 are as follows:




Amounts reclassified from AOCL


Loss on pension settlement

 	$	10,920
Amortization of net loss

 	 	843
Total before tax

 	 	11,763
Income tax impact

 	 	(2,696	)
Amounts reclassified from AOCL

 	$	9,067	 </link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031831"
          xlink:to="fe0f611c3-28f4-4654-acdd-2fb3781618e4"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031733"
          xlink:label="c56031733"
          xlink:type="locator"/>
        <link:footnote id="f12b0337e-a70d-4dbc-b99f-5e9f1f5e91dd" xlink:label="f12b0337e-a70d-4dbc-b99f-5e9f1f5e91dd" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents the additional noncontrolling interest of Pramac resulting from a common control transaction between Generac Mobile Products S.r.l. and Pramac UK Limited legal entities.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031733"
          xlink:to="f12b0337e-a70d-4dbc-b99f-5e9f1f5e91dd"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032728"
          xlink:label="c56032728"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56032729"
          xlink:label="c56032729"
          xlink:type="locator"/>
        <link:footnote id="f8f9fc68d-66c3-4e12-829b-e5a2d70f2ed0" xlink:label="f8f9fc68d-66c3-4e12-829b-e5a2d70f2ed0" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">As a result of the Tax Act, we recognized a one-time, non-cash benefit of $28.4 million in the fourth quarter of 2017 primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from 35% to 21%.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032728"
          xlink:to="f8f9fc68d-66c3-4e12-829b-e5a2d70f2ed0"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032729"
          xlink:to="f8f9fc68d-66c3-4e12-829b-e5a2d70f2ed0"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032284"
          xlink:label="c56032284"
          xlink:type="locator"/>
        <link:footnote id="fb69b9381-15d5-40a5-a089-fba7f7ea978a" xlink:label="fb69b9381-15d5-40a5-a089-fba7f7ea978a" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Recorded in the operating lease and other long-term liabilities line</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032284"
          xlink:to="fb69b9381-15d5-40a5-a089-fba7f7ea978a"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031827"
          xlink:label="c56031827"
          xlink:type="locator"/>
        <link:footnote id="f6b5d3c8d-28cc-4165-9654-a3421af013a6" xlink:label="f6b5d3c8d-28cc-4165-9654-a3421af013a6" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents unrealized losses of $(18,732), net of tax effect of $4,877 for the year ended December 31, 2019.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031827"
          xlink:to="f6b5d3c8d-28cc-4165-9654-a3421af013a6"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031825"
          xlink:label="c56031825"
          xlink:type="locator"/>
        <link:footnote id="f5d4766a7-ec21-441a-8830-ae295e8ef823" xlink:label="f5d4766a7-ec21-441a-8830-ae295e8ef823" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents unrecognized actuarial gains of $1,992 net of tax effect of $(518), included in the computation of net periodic pension cost for the year ended December 31, 2019. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031825"
          xlink:to="f5d4766a7-ec21-441a-8830-ae295e8ef823"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031969"
          xlink:label="c56031969"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031971"
          xlink:label="c56031971"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031970"
          xlink:label="c56031970"
          xlink:type="locator"/>
        <link:footnote id="fb2c37323-c761-400f-9d07-425da1d65535" xlink:label="fb2c37323-c761-400f-9d07-425da1d65535" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Includes certain foreign currency and purchase accounting related adjustments, gains/losses on disposal of assets and unrealized mark-to-market adjustments on commodity contracts.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031969"
          xlink:to="fb2c37323-c761-400f-9d07-425da1d65535"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031971"
          xlink:to="fb2c37323-c761-400f-9d07-425da1d65535"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031970"
          xlink:to="fb2c37323-c761-400f-9d07-425da1d65535"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031857"
          xlink:label="c56031857"
          xlink:type="locator"/>
        <link:footnote id="f4502211e-35d2-4f32-9912-d69efb02673e" xlink:label="f4502211e-35d2-4f32-9912-d69efb02673e" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents unrealized gains of $3,951, net of tax effect of $(1,027) for the year ended December 31, 2018.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031857"
          xlink:to="f4502211e-35d2-4f32-9912-d69efb02673e"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032290"
          xlink:label="c56032290"
          xlink:type="locator"/>
        <link:footnote id="fe35207bd-b252-4241-9385-ea0ef5516c32" xlink:label="fe35207bd-b252-4241-9385-ea0ef5516c32" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Recorded in the current portion of long-term borrowings and finance lease obligations line</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032290"
          xlink:to="fe35207bd-b252-4241-9385-ea0ef5516c32"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031861"
          xlink:label="c56031861"
          xlink:type="locator"/>
        <link:footnote id="f27e89862-095f-419c-96af-847a7134cb6a" xlink:label="f27e89862-095f-419c-96af-847a7134cb6a" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents actuarial losses of $802, net of tax effect of $(209), amortized to net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031861"
          xlink:to="f27e89862-095f-419c-96af-847a7134cb6a"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032282"
          xlink:label="c56032282"
          xlink:type="locator"/>
        <link:footnote id="fb396c7ff-0dc6-499e-8fa2-21aa90d873d1" xlink:label="fb396c7ff-0dc6-499e-8fa2-21aa90d873d1" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Recorded in the operating lease and other assets line</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032282"
          xlink:to="fb396c7ff-0dc6-499e-8fa2-21aa90d873d1"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031986"
          xlink:label="c56031986"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031984"
          xlink:label="c56031984"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031985"
          xlink:label="c56031985"
          xlink:type="locator"/>
        <link:footnote id="f97f04034-80c9-4fcd-a015-ce14f815fce6" xlink:label="f97f04034-80c9-4fcd-a015-ce14f815fce6" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents severance and other non-recurring restructuring charges related to the consolidation of certain of our facilities.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031986"
          xlink:to="f97f04034-80c9-4fcd-a015-ce14f815fce6"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031984"
          xlink:to="f97f04034-80c9-4fcd-a015-ce14f815fce6"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031985"
          xlink:to="f97f04034-80c9-4fcd-a015-ce14f815fce6"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031982"
          xlink:label="c56031982"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031983"
          xlink:label="c56031983"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031981"
          xlink:label="c56031981"
          xlink:type="locator"/>
        <link:footnote id="ff80e36c3-2a38-4525-b91b-acabdeff1b15" xlink:label="ff80e36c3-2a38-4525-b91b-acabdeff1b15" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement, equity
issuance, debt issuance or refinancing, together with certain fees relating to our senior secured credit facilities.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031982"
          xlink:to="ff80e36c3-2a38-4525-b91b-acabdeff1b15"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031983"
          xlink:to="ff80e36c3-2a38-4525-b91b-acabdeff1b15"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031981"
          xlink:to="ff80e36c3-2a38-4525-b91b-acabdeff1b15"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032289"
          xlink:label="c56032289"
          xlink:type="locator"/>
        <link:footnote id="f07932f20-e4c0-4165-be1b-2f8a83d57f63" xlink:label="f07932f20-e4c0-4165-be1b-2f8a83d57f63" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Recorded in the property and equipment, net line</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032289"
          xlink:to="f07932f20-e4c0-4165-be1b-2f8a83d57f63"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031855"
          xlink:label="c56031855"
          xlink:type="locator"/>
        <link:footnote id="fd22e7bd1-649b-49d1-afb0-3edefcd4af36" xlink:label="fd22e7bd1-649b-49d1-afb0-3edefcd4af36" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents unrecognized actuarial losses of $(211), net of tax benefit of $55, included in the computation of net periodic pension cost for the year ended December 31, 2018. Refer to Note 16, "Benefit Plans," to the consolidated financial statements for additional information.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031855"
          xlink:to="fd22e7bd1-649b-49d1-afb0-3edefcd4af36"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56031977"
          xlink:label="c56031977"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031976"
          xlink:label="c56031976"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56031975"
          xlink:label="c56031975"
          xlink:type="locator"/>
        <link:footnote id="f966532ad-0b53-453d-91cc-1d00555eddd9" xlink:label="f966532ad-0b53-453d-91cc-1d00555eddd9" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Represents the non-cash write-off of original issue discount and deferred financing costs due to a voluntary prepayment of Term Loan debt.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031977"
          xlink:to="f966532ad-0b53-453d-91cc-1d00555eddd9"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031976"
          xlink:to="f966532ad-0b53-453d-91cc-1d00555eddd9"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56031975"
          xlink:to="f966532ad-0b53-453d-91cc-1d00555eddd9"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032291"
          xlink:label="c56032291"
          xlink:type="locator"/>
        <link:footnote id="f14b3dca3-beaa-42f4-8dad-7927404aa2d8" xlink:label="f14b3dca3-beaa-42f4-8dad-7927404aa2d8" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Recorded in the long-term borrowings and finance lease obligations line</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032291"
          xlink:to="f14b3dca3-beaa-42f4-8dad-7927404aa2d8"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032724"
          xlink:label="c56032724"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56032725"
          xlink:label="c56032725"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56032726"
          xlink:label="c56032726"
          xlink:type="locator"/>
        <link:footnote id="f688c16bc-067c-442d-94d4-c05738eeb1e2" xlink:label="f688c16bc-067c-442d-94d4-c05738eeb1e2" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">With the adoption of ASU 2016-09 in 2017, excess tax benefits from equity awards are reflected within the provision for income taxes rather than within the consolidated balance sheet.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032724"
          xlink:to="f688c16bc-067c-442d-94d4-c05738eeb1e2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032725"
          xlink:to="f688c16bc-067c-442d-94d4-c05738eeb1e2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032726"
          xlink:to="f688c16bc-067c-442d-94d4-c05738eeb1e2"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#c56032565"
          xlink:label="c56032565"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56032566"
          xlink:label="c56032566"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#c56032567"
          xlink:label="c56032567"
          xlink:type="locator"/>
        <link:footnote id="f7fbe6b93-42b0-4870-bbe7-7f6007241821" xlink:label="f7fbe6b93-42b0-4870-bbe7-7f6007241821" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">Excludes approximately 38,900 and 48,200 stock options for the three and nine months ended September 30, 2018, respectively, as the impact of such awards was anti-dilutive. There were no awards with an anti-dilutive impact for the three and nine months ended September 30, 2019.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032565"
          xlink:to="f7fbe6b93-42b0-4870-bbe7-7f6007241821"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032566"
          xlink:to="f7fbe6b93-42b0-4870-bbe7-7f6007241821"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56032567"
          xlink:to="f7fbe6b93-42b0-4870-bbe7-7f6007241821"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>94
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823756768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Acquisitions (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 26, 2019</div></th>
<th class="th"><div>Mar. 12, 2019</div></th>
<th class="th"><div>Jun. 01, 2018</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Payments to Acquire Businesses, Net of Cash Acquired, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 112,001<span></span>
</td>
<td class="nump">$ 65,440<span></span>
</td>
<td class="num">$ (1,257)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill, Ending Balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">805,284<span></span>
</td>
<td class="nump">$ 764,655<span></span>
</td>
<td class="nump">$ 721,523<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=gnrc_PikaMember', window );">Pika [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Payments to Acquire Businesses, Net of Cash Acquired, Total</a></td>
<td class="nump">$ 49,068<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill', window );">Business Acquisition, Purchase Price Allocation, Intangible Assets Including Goodwill</a></td>
<td class="nump">58,196<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill, Ending Balance</a></td>
<td class="nump">$ 19,896<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=gnrc_NeurioMember', window );">Neurio [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Payments to Acquire Businesses, Net of Cash Acquired, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 59,071<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7,922<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill', window );">Business Acquisition, Purchase Price Allocation, Intangible Assets Including Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">58,762<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill, Ending Balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17,862<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=gnrc_SelmecMember', window );">Selmec [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Payments to Acquire Businesses, Net of Cash Acquired, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 79,972<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill, Ending Balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">46,196<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized', window );">Business Combination, Liabilities Arising from Contingencies, Amount Recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14,902<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue', window );">Business Combination, Liabilities Arising from Contingencies, Changes in Fair Value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(977)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion', window );">Business Combination, Liabilities Arising from Contingencies, Interest Accretion</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,740<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments', window );">Business Combination, Liabilities Arising from Contingencies, Other Fair Value Re-measurement Adjustments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (3,717)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of acquisition cost of a business combination allocated to an identifiable intangible asset including goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the changes in fair value of liabilities arising from contingencies in a business acquisition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the interest accretion related to liabilities arising from contingencies in a business acquisition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the other fair Value re-measurement adjustments related to liabilities arising from contingencies in a business acquisition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount, measured at acquisition-date fair value, of all liabilities assumed that arise from contingencies and were recognized by the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=gnrc_PikaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=gnrc_PikaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=gnrc_NeurioMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=gnrc_NeurioMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=gnrc_SelmecMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=gnrc_SelmecMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858709440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 19 - Quarterly Financial Information (Unaudited) (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock', window );">Quarterly Financial Information [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quarters Ended 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q1</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q2</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q3</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q4</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">470,353</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">541,916</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">601,135</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590,932</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">162,175</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">195,838</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">217,517</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">222,222</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">71,173</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">90,926</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">105,556</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">104,508</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44,861</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,958</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,574</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">69,614</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.77</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.99</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.14</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.76</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.98</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.18</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 605px;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Quarters Ended 2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q1</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q2</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q3</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 132px;"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Q4</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 9px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">400,091</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">497,581</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">562,388</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">563,404</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Gross profit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">141,927</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">178,473</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">200,334</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">204,306</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating income</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,347</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">85,467</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">106,519</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">108,848</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33,645</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">53,261</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,776</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,575</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - basic:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.42</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.83</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.21</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net income attributable to common shareholders per common share - diluted:</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.42</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.82</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.11</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 120px; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.20</td>
       <td style="width: 9px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118952077&amp;loc=d3e1280-108306<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>96
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858714848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Earnings Per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Numerator</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,007</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">238,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">157,808</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redeemable noncontrolling interest redemption value adjustment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,253</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(17,970</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to common shareholders</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">253,260</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">220,287</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">158,717</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Denominator</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average shares, basic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,926,986</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,662,031</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62,040,704</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Dilutive effect of stock compensation awards (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">938,460</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">571,194</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">602,168</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Diluted shares</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">62,865,446</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">62,233,225</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">62,642,872</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to common shareholders per share</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Basic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.09</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.57</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.56</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Diluted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.03</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.54</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.53</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>97
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855300384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Segment Reporting- Schedule of Error Corrections (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 590,932<span></span>
</td>
<td class="nump">$ 601,135<span></span>
</td>
<td class="nump">$ 541,916<span></span>
</td>
<td class="nump">$ 470,353<span></span>
</td>
<td class="nump">$ 563,404<span></span>
</td>
<td class="nump">$ 562,388<span></span>
</td>
<td class="nump">$ 497,581<span></span>
</td>
<td class="nump">$ 400,091<span></span>
</td>
<td class="nump">$ 2,204,336<span></span>
</td>
<td class="nump">$ 2,023,464<span></span>
</td>
<td class="nump">$ 1,679,373<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AdjustedEBITDA', window );">Adjusted EBITDA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">454,115<span></span>
</td>
<td class="nump">424,552<span></span>
</td>
<td class="nump">317,300<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember', window );">Amounts Adjusted from the Domestic Segment to the International Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,851<span></span>
</td>
<td class="nump">13,805<span></span>
</td>
<td class="nump">31,828<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_AdjustedEBITDA', window );">Adjusted EBITDA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">984<span></span>
</td>
<td class="nump">190<span></span>
</td>
<td class="nump">7,840<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember', window );">Residential Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,143,723<span></span>
</td>
<td class="nump">1,042,739<span></span>
</td>
<td class="nump">870,490<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember', window );">Residential Power Products [Member] | Amounts Adjusted from the Domestic Segment to the International Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,129<span></span>
</td>
<td class="nump">9,924<span></span>
</td>
<td class="nump">18,888<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember', window );">Commercial and Industrial Power Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">871,595<span></span>
</td>
<td class="nump">820,270<span></span>
</td>
<td class="nump">684,353<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember', window );">Commercial and Industrial Power Products [Member] | Amounts Adjusted from the Domestic Segment to the International Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,724<span></span>
</td>
<td class="nump">2,651<span></span>
</td>
<td class="nump">12,940<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember', window );">Other Products and Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">189,018<span></span>
</td>
<td class="nump">160,455<span></span>
</td>
<td class="nump">124,530<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember', window );">Other Products and Services [Member] | Amounts Adjusted from the Domestic Segment to the International Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 998<span></span>
</td>
<td class="nump">$ 1,230<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_AdjustedEBITDA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents net income before interest expense, taxes, depreciation and amortization, as further adjusted for other non-cash items</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_AdjustedEBITDA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gnrc_ResidentialPowerProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gnrc_CommercialAndIndustrialPowerProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gnrc_OtherProductsAndServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>98
<FILENAME>R92.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854037968">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">U.S. statutory rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">4.30%<span></span>
</td>
<td class="nump">4.70%<span></span>
</td>
<td class="nump">4.10%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent', window );">State tax rate differential</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1.00%)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch', window );">Research and development credits</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(0.80%)<span></span>
</td>
<td class="num">(1.30%)<span></span>
</td>
<td class="num">(1.40%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent', window );">State credits</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
<td class="num">(0.20%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent', window );">Share-based compensation</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="num">(0.60%)<span></span>
</td>
<td class="num">(0.50%)<span></span>
</td>
<td class="num">(1.40%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate', window );">Tax Act impact (2)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[2]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(0.20%)<span></span>
</td>
<td class="num">(13.90%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments', window );">Other</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(0.80%)<span></span>
</td>
<td class="num">(0.20%)<span></span>
</td>
<td class="num">(0.90%)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">21.10%<span></span>
</td>
<td class="nump">22.50%<span></span>
</td>
<td class="nump">21.30%<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">With the adoption of ASU 2016-09 in 2017, excess tax benefits from equity awards are reflected within the provision for income taxes rather than within the consolidated balance sheet.</td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top">As a result of the Tax Act, we recognized a one-time, non-cash benefit of $28.4 million in the fourth quarter of 2017 primarily from the impact of the revaluation of our net deferred tax liabilities. This non-cash benefit resulted primarily from the Federal rate reduction from 35% to 21%.</td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state tax credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 740<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117330312&amp;loc=d3e23163-113944<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to research tax credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>R96.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858720480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanInterestCost', window );">Interest cost</a></td>
<td class="nump">$ 2,401<span></span>
</td>
<td class="nump">$ 2,575<span></span>
</td>
<td class="nump">$ 2,688<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets', window );">Expected return on plan assets</a></td>
<td class="num">(3,500)<span></span>
</td>
<td class="num">(3,525)<span></span>
</td>
<td class="num">(3,011)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses', window );">Amortization of net loss</a></td>
<td class="nump">843<span></span>
</td>
<td class="nump">802<span></span>
</td>
<td class="nump">883<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1', window );">Loss on pension settlement</a></td>
<td class="nump">10,920<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost', window );">Net periodic pension cost (benefit)</a></td>
<td class="nump">$ 10,664<span></span>
</td>
<td class="num">$ (148)<span></span>
</td>
<td class="nump">$ 560<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) recognized in net periodic benefit (cost) credit of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanInterestCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost recognized for passage of time related to defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanInterestCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of net periodic benefit cost (credit) for defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) recognized in net periodic benefit (cost) credit from settlement and curtailment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(7)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(7)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>100
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854199824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Goodwill and Intangible Assets (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of Intangible Assets, Total</a></td>
<td class="nump">$ 28,644<span></span>
</td>
<td class="nump">$ 22,112<span></span>
</td>
<td class="nump">$ 28,861<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</a></td>
<td class="nump">31,237<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Two</a></td>
<td class="nump">29,473<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Three</a></td>
<td class="nump">22,226<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Four</a></td>
<td class="nump">18,344<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Five</a></td>
<td class="nump">$ 16,156<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>102
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858770256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Stock Repurchase Program<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockTextBlock', window );">Treasury Stock [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">13.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Stock Repurchase Programs</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In <em style="font-weight: inherit; font-style: normal;"> August 2015, </em>the Company&#8217;s Board of Directors approved a $200,000 stock repurchase program, which the Company completed in the <em style="font-weight: inherit; font-style: normal;">third</em> quarter of <em style="font-weight: inherit; font-style: normal;">2016.</em> In <em style="font-weight: inherit; font-style: normal;"> October 2016, </em>the Company&#8217;s Board of Directors approved a new $250,000 stock repurchase program, which expired in the <em style="font-weight: inherit; font-style: normal;">fourth</em> quarter of <em style="font-weight: inherit; font-style: normal;">2018.</em> In <em style="font-weight: inherit; font-style: normal;"> September 2018, </em>the Company&#8217;s Board of Directors approved another stock repurchase program, which commenced in <em style="font-weight: inherit; font-style: normal;"> October 2018, </em>and under which the Company <em style="font-weight: inherit; font-style: normal;"> may </em>repurchase an additional $250,000 of its common stock over the following 24 months. The Company <em style="font-weight: inherit; font-style: normal;"> may </em>repurchase its common stock from time to time, in amounts and at prices the Company deems appropriate, subject to market conditions and other considerations. The repurchases <em style="font-weight: inherit; font-style: normal;"> may </em>be executed using open market purchases, privately negotiated agreements or other transactions. The actual timing, number and value of shares repurchased under the program will be determined by management at its discretion and will depend on a number of factors, including the market price of the Company&#8217;s common stock and general market and economic conditions, applicable legal requirements, and compliance with the terms of the Company&#8217;s outstanding indebtedness. The repurchases <em style="font-weight: inherit; font-style: normal;"> may </em>be funded with cash on hand, available borrowings or proceeds from potential debt or other capital markets sources. The stock repurchase program <em style="font-weight: inherit; font-style: normal;"> may </em>be suspended or discontinued at any time without prior notice. During the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company did <span style="-sec-ix-hidden:c56032532">not</span> repurchase any shares of its common stock. During the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>and <em style="font-weight: inherit; font-style: normal;">2017,</em> the Company repurchased 560,000 and 844,500 shares of its common stock, respectively, for $25,656 and $30,012, respectively, all funded with cash on hand. Since the inception of the above noted programs, the Company has repurchased 8,676,706 shares of its common stock for $305,547 (at an average cost per share of $35.21), all funded with cash on hand.</p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -URI http://asc.fasb.org/subtopic&amp;trid=2208821<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>103
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847590544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Share Plans<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Share-based Payment Arrangement [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">17.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Share Plans</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company adopted an equity incentive plan (Plan) on <em style="font-weight: inherit; font-style: normal;"> February 10, 2010 </em>in connection with its initial public offering. The Plan, as amended, allows for granting of up to 9.1 million share-based awards to executives, directors and employees. Awards available for grant under the Plan include stock options, stock appreciation rights, restricted stock, other share-based awards and performance-based compensation awards. Total share-based compensation expense related to the Plan, net of estimated forfeitures, was $15,738, $14,563 and $10,205 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> June 13, 2019, </em>the stockholders of Generac Holdings Inc. approved the Company&#8217;s <em style="font-weight: inherit; font-style: normal;">2019</em> Equity Incentive Plan (<em style="font-weight: inherit; font-style: normal;">2019</em> Plan). The <em style="font-weight: inherit; font-style: normal;">2019</em> Plan allows for granting of up to 2.7 million share-based awards to executives, directors and employees. Awards available for grant under the Plan include stock options, stock appreciation rights, restricted stock, other share-based awards and performance-based compensation awards. Total share-based compensation expense related to the <em style="font-weight: inherit; font-style: normal;">2019</em> Plan, net of estimated forfeitures, was $956&#160;for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Stock Options</i></b> - Stock options granted in <em style="font-weight: inherit; font-style: normal;">2019</em> have an exercise price of $52.07 per share; stock options granted in <em style="font-weight: inherit; font-style: normal;">2018</em> have an exercise price between $43.88 per share and $45.29 per share; and stock options granted in <em style="font-weight: inherit; font-style: normal;">2017</em> have an exercise price between $40.12 per share and $48.98 per share. Stock options vest in equal installments over <span style="-sec-ix-hidden:c56032900">four</span> years, subject to the grantee&#8217;s continued employment or service and expire <span style="-sec-ix-hidden:c56032901">ten</span> years after the date of grant.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Stock option exercises can be net-share settled such that the Company withholds shares with value equivalent to the exercise price of the stock option awards plus the employees&#8217; minimum statutory obligation for the applicable income and other employment taxes. Total shares withheld were 32,211, 63,817 and 9,033 in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and were based on the value of the stock on the exercise dates. The net-share settlement has the effect of share repurchases by the Company as they reduce the number of shares that would have otherwise been issued.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Employees can also utilize a cashless for cash exercise of stock options, such that all exercised shares will be sold in the market immediately. Cash equivalent to the exercise price of the awards plus the employees&#8217; minimum statutory tax obligations is remitted to the Company, with the remaining cash being transferred to the employee. Total net proceeds from the cashless for cash exercise of stock options were $9,395, $5,614 and $6,951 in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and are reflected as a financing activity in the consolidated statement of cash flows.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total payments made by the Company to the taxing authorities for the employees&#8217; tax obligations related to stock option exercises were $3,360, $3,846 and $4,301 in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and are reflected as a financing activity in the consolidated statements of cash flows.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The grant-date fair value of each option grant is estimated using the Black-Scholes-Merton option pricing model. The fair value is then amortized on a straight-line basis over the requisite service period of the awards, which is generally the vesting period. Use of a valuation model requires management to make certain assumptions with respect to selected model inputs. Expected volatility is calculated based on an analysis of historic volatility of the Company&#8217;s stock price. The average expected life is based on the contractual term of the option using the simplified method. The risk-free interest rate is based on U.S. Treasury <em style="font-weight: inherit; font-style: normal;">zero</em>-coupon issues with a remaining term equal to the expected life assumed at the date of grant. The compensation expense recognized is net of estimated forfeitures. Forfeitures are estimated based on actual share option forfeiture history.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The weighted-average assumptions used in the Black-Scholes-Merton option pricing model for <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average grant date fair value</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19.33</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17.86</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16.84</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Assumptions:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected stock price volatility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Risk free interest rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.52</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.60</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.92</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected annual dividend per share</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected life of options (years)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A summary of the Company&#8217;s stock option activity and related information for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Number of </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Options</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Exercise Price</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average Remaining Contractual Term (in years)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Aggregate Intrinsic Value </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>($ in thousands)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2016</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,482,964</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">27.49</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,840</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">346,421</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40.13</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(287,375</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.58</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(69,880</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41.12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,472,130</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33.11</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,281</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">366,231</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43.88</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(267,909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19.90</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(49,285</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43.34</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,521,167</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.70</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,212</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">369,779</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">52.07</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(263,250</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30.75</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(35,010</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43.79</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,592,686</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42.04</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">93,242</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercisable as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">726,817</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.78</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">45,649</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>there was $10,649 of total unrecognized compensation cost, net of expected forfeitures, related to unvested options. The cost is expected to be recognized over the remaining service period, having a weighted-average period of 2.5&#160;years. Total share-based compensation cost related to the stock options for <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> was $5,597, $4,998 and $4,503, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Restricted Stock</i></b> &#8211; Restricted stock awards vest in equal installments over <span style="-sec-ix-hidden:c56032935">three</span> years, subject to the grantee&#8217;s continued employment or service. Certain restricted stock awards also include performance shares, which were awarded in the years <em style="font-weight: inherit; font-style: normal;">2014</em> through <em style="font-weight: inherit; font-style: normal;">2019.</em> The number of performance shares that can be earned are contingent upon Company performance measures over a <span style="-sec-ix-hidden:c56032938">three</span>-year period. Performance measures are based on a weighting of a number of financial metrics, from which grantees <em style="font-weight: inherit; font-style: normal;"> may </em>earn from 0% to 200% of their target performance share award. The performance period for the <em style="font-weight: inherit; font-style: normal;">2017</em> awards covers the years <em style="font-weight: inherit; font-style: normal;">2017</em> through <em style="font-weight: inherit; font-style: normal;">2019,</em> the performance period for the <em style="font-weight: inherit; font-style: normal;">2018</em> awards covers the years <em style="font-weight: inherit; font-style: normal;">2018</em> through <em style="font-weight: inherit; font-style: normal;">2020,</em> and the performance period for the <em style="font-weight: inherit; font-style: normal;">2019</em> awards covers the years <em style="font-weight: inherit; font-style: normal;">2019</em> through <em style="font-weight: inherit; font-style: normal;">2021.</em> The Company estimates the number of performance shares that will vest based on projected financial performance. The fair value of restricted awards is determined based on the market value of the Company's shares on the grant date. The fair market value of the restricted awards at the time of the grant is amortized to expense over the period of vesting. The compensation expense recognized for restricted share awards is net of estimated forfeitures.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Restricted stock vesting is net-share settled such that, upon vesting, the Company withholds shares with value equivalent to the employees&#8217; minimum statutory tax obligation, and then pays the cash to the taxing authorities on behalf of the employees. In effect, the Company repurchases these shares and classifies them as treasury stock. Total shares withheld were 55,953, 38,186 and 39,500 in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and were based on the value of the stock on the vesting dates. Total payments made by the Company to the taxing authorities for the employees&#8217; tax obligations related to restricted stock vesting&#160;were $3,078, $1,812 and $1,591 in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, and are reflected as a financing activity within the consolidated statements of cash flows.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">A summary of the Company's restricted stock activity for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Shares</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average Grant-Date Fair Value</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2016</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">361,403</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38.18</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">211,769</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.91</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(133,796</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40.60</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(47,100</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42.48</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">392,276</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.77</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">208,803</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44.49</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(128,433</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.03</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,650</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.43</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">425,996</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40.50</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">265,255</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62.38</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(184,628</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38.78</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(14,986</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44.23</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">491,637</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">52.84</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">As of <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>there was $16,165 of unrecognized compensation cost, net of expected forfeitures, related to non-vested restricted stock awards. That cost is expected to be recognized over the remaining service period, having a weighted-average period of 1.9 years. Total share-based compensation cost related to the restricted stock for <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> inclusive of performance shares, was $11,097, $9,565 and $5,702, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">During <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> 22,544, 33,419 and 34,095 shares of stock, respectively,&#160;were granted to certain members of the Company&#8217;s Board of Directors as a component of their compensation for their service on the Board, of which 22,544, 33,419 and 22,762 shares, respectively, were fully vested at time of grant. Non-employee directors can elect to receive his or her director fees in the form of deferred stock units, which voluntarily defers the issuance of the related shares granted until the director separates from the Company or a triggering event occurs. 16,604, 22,675, and 11,333 of deferred stock units are included in the shares of stock granted to certain members of the Company&#8217;s Board of Directors for the years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Total share-based compensation cost for these share grants in <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017</em> was $1,391, $1,718 and $1,133, respectively, which is recorded in operating expenses in the consolidated statements of comprehensive income.</p>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>104
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847855248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 21 - Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">21.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Subsequent Events</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company performed an evaluation of subsequent events through the date these financial statements were issued and <em style="font-weight: inherit; font-style: normal;">no</em> such events were identified.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGHDR" style="text-align: left; width: 100%"><a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt"/>
    </div>
   </div>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>105
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6843312816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Share Plans (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 49%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average grant date fair value</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19.33</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17.86</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16.84</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Assumptions:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected stock price volatility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Risk free interest rate</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.52</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.60</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.92</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected annual dividend per share</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Expected life of options (years)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Share-based Payment Arrangement, Option, Activity [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Number of </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Options</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Exercise Price</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average Remaining Contractual Term (in years)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Aggregate Intrinsic Value </b></b></p> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>($ in thousands)</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2016</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,482,964</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">27.49</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.5</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,840</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">346,421</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40.13</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(287,375</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.58</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(69,880</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41.12</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,472,130</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33.11</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,281</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">366,231</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43.88</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(267,909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19.90</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(49,285</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43.34</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,521,167</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.70</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.0</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19,212</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">369,779</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">52.07</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercised</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(263,250</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30.75</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(35,010</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">43.79</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Outstanding as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,592,686</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42.04</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.9</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">93,242</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Exercisable as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">726,817</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.78</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5.3</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">45,649</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Shares</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Weighted-Average Grant-Date Fair Value</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2016</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">361,403</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38.18</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">211,769</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.91</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(133,796</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40.60</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(47,100</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42.48</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2017</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">392,276</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">37.77</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">208,803</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44.49</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(128,433</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.03</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(46,650</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.43</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">425,996</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40.50</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Granted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">265,255</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62.38</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Vested</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(184,628</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38.78</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Forfeited</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(14,986</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44.23</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Non-vested as of December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">491,637</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">52.84</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>106
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847845360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Credit Agreements (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShortTermDebtTextBlock', window );">Schedule of Short-term Debt [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ABL facility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,961</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18,459</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other lines of credit</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">27,753</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">27,124</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">58,714</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">45,583</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock', window );">Schedule of Long-term Debt Instruments [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Term loan</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">830,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">879,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Original issue discount and deferred financing costs</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(18,048</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(22,440</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ABL facility</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease obligation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">25,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,171</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,236</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,642</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">840,150</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">878,373</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Less: current portion of debt</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">553</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,075</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Less: current portion of finance lease obligation</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,830</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">902</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">837,767</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">876,396</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Maturities of Long-term Debt [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">553</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,683</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">830,000</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">832,236</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of long-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 entity, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28541-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21506-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(e),(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28551-108399<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21521-112644<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21538-112644<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=75038535&amp;loc=d3e64711-112823<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6802200&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShortTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of short-term debt arrangements (having initial terms of repayment within one year or the normal operating cycle, if longer) including: (1) description of the short-term debt arrangement; (2) identification of the lender or type of lender; (3) repayment terms; (4) weighted average interest rate; (5) carrying amount of funds borrowed under the specified short-term debt arrangement as of the balance sheet date; (6) description of the refinancing of a short-term obligation when that obligation is excluded from current liabilities in the balance sheet; and (7) amount of a short-term obligation that has been excluded from current liabilities in the balance sheet because of a refinancing of the obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShortTermDebtTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>107
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853538736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember', window );">Land Improvements [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">8 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember', window );">Land Improvements [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">20 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building Improvements [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building Improvements [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">40 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember', window );">Dies and Tools [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember', window );">Dies and Tools [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">6 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">2 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, estimated useful lives (Year)</a></td>
<td class="text">20 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=gnrc_DiesAndToolsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>108
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858793712">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 8 - Balance Sheet Details (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment', window );">Other Inventory, Materials, Supplies and Merchandise under Consignment, Gross</a></td>
<td class="nump">$ 18,684<span></span>
</td>
<td class="nump">$ 8,488<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet', window );">Capital Leases, Balance Sheet, Assets by Major Class, Net, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 20,158<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The total gross amount less the charge for the use of the long-lived depreciable assets subject to a lease meeting the criteria for capitalization.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84164817&amp;loc=d3e45280-112737<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross amount of inventory owned by the entity but in the hands of a customer, typically a reseller.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>109
<FILENAME>R93.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823660896">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_EmployerContributionUnderMedicalAndDentalPlan', window );">Employer Contribution under Medical and Dental Plan</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18,290<span></span>
</td>
<td class="nump">$ 14,660<span></span>
</td>
<td class="nump">$ 14,992<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Defined Benefit Plan, Benefit Obligation, (Increase) Decrease for Settlement, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,920<span></span>
</td>
<td class="nump">(0)<span></span>
</td>
<td class="nump">(0)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PensionContributions', window );">Payment for Pension Benefits</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,017<span></span>
</td>
<td class="nump">9,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses', window );">Defined Benefit Plan, Amortization of Gain (Loss)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(843)<span></span>
</td>
<td class="num">(802)<span></span>
</td>
<td class="num">(883)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Defined Benefit Plan, Plan Assets, Amount, Ending Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 61,870<span></span>
</td>
<td class="nump">58,014<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_EquityAndRealEstateMember', window );">Equity and Real Estate [Member] | Minimum [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Defined Benefit Plan, Plan Assets, Target Allocation, Percentage</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">75.00%<span></span>
</td>
<td class="nump">75.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_EquityAndRealEstateMember', window );">Equity and Real Estate [Member] | Maximum [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage', window );">Defined Benefit Plan, Plan Assets, Target Allocation, Percentage</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">85.00%<span></span>
</td>
<td class="nump">85.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=gnrc_SavingsPlan401kMember', window );">Savings Plan 401(k) [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch', window );">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_DefinedContributionPlanPercentageOfEligibleCompensation', window );">Defined Contribution Plan Percentage of Eligible Compensation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanCostRecognized', window );">Defined Contribution Plan, Cost</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,791<span></span>
</td>
<td class="nump">$ 4,193<span></span>
</td>
<td class="nump">$ 3,600<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Pension Plan [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation', window );">Defined Benefit Plan, Benefit Obligation, (Increase) Decrease for Settlement, Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 10,920<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses', window );">Defined Benefit Plan, Amortization of Gain (Loss)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(843)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets', window );">Defined Benefit Plan, Plan Assets, Amount, Ending Balance</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 61,870<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="5"></td></tr>
<tr><td colspan="5"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents pre-tax settlement charges related to the termination of the Company&#8217;s domestic pension plan in the fourth quarter of 2019.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_DefinedContributionPlanPercentageOfEligibleCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of eligible compensation of employees under defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_DefinedContributionPlanPercentageOfEligibleCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_EmployerContributionUnderMedicalAndDentalPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contribution made under medical and dental plan made by the employer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_EmployerContributionUnderMedicalAndDentalPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) recognized in net periodic benefit (cost) credit of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanFairValueOfPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanFairValueOfPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of target investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118257860&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanSettlementsBenefitObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of (increase) decrease to benefit obligation of defined benefit plan from irrevocable action relieving primary responsibility for benefit obligation and eliminating risk for obligation and assets used to effect settlement. Includes, but is not limited to, lump-sum cash payment to participant in exchange for right to receive specified benefits, purchase of nonparticipating annuity contract and change from remeasurement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(10)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanSettlementsBenefitObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanCostRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost for defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanCostRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage employer matches of the employee's percentage contribution matched.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PensionContributions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for pension benefit. Includes, but is not limited to, employer contribution to fund plan asset and payment to retiree. Excludes other postretirement benefit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionContributions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_EquityAndRealEstateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis=gnrc_EquityAndRealEstateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=gnrc_SavingsPlan401kMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=gnrc_SavingsPlan401kMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>110
<FILENAME>R97.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847650000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate', window );">Discount Rate</a></td>
<td class="nump">4.24%<span></span>
</td>
<td class="nump">3.60%<span></span>
</td>
<td class="nump">4.14%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets', window );">Expected long-term rate of return on plan assets</a></td>
<td class="nump">6.60%<span></span>
</td>
<td class="nump">6.19%<span></span>
</td>
<td class="nump">6.58%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average rate for present value of future retirement benefits cash flows, used to determine net periodic benefit cost of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (k)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average rate of return on plan assets, reflecting average rate of earnings expected on existing plan assets and expected contributions, used to determine net periodic benefit cost of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (k)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=118255775&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>111
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855400576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">$ 764,655<span></span>
</td>
<td class="nump">$ 721,523<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquisitions of businesses, net</a></td>
<td class="nump">40,836<span></span>
</td>
<td class="nump">46,788<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="num">(207)<span></span>
</td>
<td class="num">(3,656)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">805,284<span></span>
</td>
<td class="nump">764,655<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill, gross</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,313,088<span></span>
</td>
<td class="nump">$ 1,272,459<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss', window );">Accumulated impairment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(507,804)<span></span>
</td>
<td class="num">(507,804)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">764,655<span></span>
</td>
<td class="nump">721,523<span></span>
</td>
<td class="nump">805,284<span></span>
</td>
<td class="nump">764,655<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember', window );">Domestic [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">621,451<span></span>
</td>
<td class="nump">621,451<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquisitions of businesses, net</a></td>
<td class="nump">37,758<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">659,209<span></span>
</td>
<td class="nump">621,451<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill, gross</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,162,402<span></span>
</td>
<td class="nump">1,124,644<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss', window );">Accumulated impairment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(503,193)<span></span>
</td>
<td class="num">(503,193)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">659,209<span></span>
</td>
<td class="nump">621,451<span></span>
</td>
<td class="nump">659,209<span></span>
</td>
<td class="nump">621,451<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember', window );">International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">143,204<span></span>
</td>
<td class="nump">100,072<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Acquisitions of businesses, net</a></td>
<td class="nump">3,078<span></span>
</td>
<td class="nump">46,788<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign currency translation</a></td>
<td class="num">(207)<span></span>
</td>
<td class="num">(3,656)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">146,075<span></span>
</td>
<td class="nump">143,204<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill, gross</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">150,686<span></span>
</td>
<td class="nump">147,815<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss', window );">Accumulated impairment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4,611)<span></span>
</td>
<td class="num">(4,611)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 146,075<span></span>
</td>
<td class="nump">$ 143,204<span></span>
</td>
<td class="nump">$ 146,075<span></span>
</td>
<td class="nump">$ 143,204<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAcquiredDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAcquiredDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillForeignCurrencyTranslationGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated impairment loss for an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairedAccumulatedImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gnrc_DomesticMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gnrc_InternationalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>112
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "gnrc20191231_10k.htm": {
   "axisCustom": 0,
   "axisStandard": 32,
   "contextCount": 384,
   "dts": {
    "calculationLink": {
     "local": [
      "gnrc-20191231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "gnrc-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": [
      "gnrc20191231_10k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "gnrc-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",
      "http://xbrl.fasb.org/srt/2019/elts/srt-doc-2019-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "gnrc-20191231_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "http://xbrl.fasb.org/srt/2019/elts/srt-ref-2019-01-31.xml",
      "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": [
      "gnrc-20191231.xsd"
     ],
     "remote": [
      "https://xbrl.sec.gov/country/2017/country-2017-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/nonNumeric-2009-12-16.xsd",
      "http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://xbrl.sec.gov/naics/2011/naics-2011-01-31.xsd",
      "https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd",
      "http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd",
      "https://xbrl.sec.gov/exch/2018/exch-2018-01-31.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.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-2019-01-31.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd",
      "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd"
     ]
    }
   },
   "elementCount": 776,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2019-01-31": 39,
    "http://www.generac.com/20191231": 15,
    "http://xbrl.sec.gov/dei/2019-01-31": 6,
    "total": 60
   },
   "keyCustom": 74,
   "keyStandard": 521,
   "memberCustom": 35,
   "memberStandard": 56,
   "nsprefix": "gnrc",
   "nsuri": "http://www.generac.com/20191231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000 - Document - Document And Entity Information",
     "role": "http://www.generac.com/20191231/role/statement-document-and-entity-information",
     "shortName": "Document And Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "009 - Disclosure - Note 3 - Acquisitions",
     "role": "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
     "shortName": "Note 3 - Acquisitions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R100": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2017-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "099 - Disclosure - Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
     "shortName": "Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2018-01-01_2018-12-31_DefinedBenefitPlanByPlanAssetCategoriesAxis-OtherInvestmentMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R101": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2010-02-10",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "100 - Disclosure - Note 17 - Share Plans (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
     "shortName": "Note 17 - Share Plans (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2010-02-10",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R102": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "101 - Disclosure - Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details",
     "shortName": "Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_AwardTypeAxis-EmployeeStockOptionMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPerShare",
      "xsiNil": "false"
     }
    },
    "R103": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "102 - Disclosure - Note 17 - Share Plans - Summary of Stock Option Activity (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details",
     "shortName": "Note 17 - Share Plans - Summary of Stock Option Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R104": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "103 - Disclosure - Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details",
     "shortName": "Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R105": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "gnrc:AmountFinancedByDealers",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "104 - Disclosure - Note 18 - Commitments and Contingencies (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual",
     "shortName": "Note 18 - Commitments and Contingencies (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "gnrc:AmountFinancedByDealers",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R106": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "105 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
     "shortName": "Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R107": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ValuationAndQualifyingAccountsTableTextBlock",
       "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "106 - Disclosure - Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details",
     "shortName": "Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ValuationAndQualifyingAccountsTableTextBlock",
       "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-12-31_ValuationAllowancesAndReservesTypeAxis-AllowanceForCreditLossMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ValuationAllowancesAndReservesBalance",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:RedeemableNoncontrollingInterestTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "010 - Disclosure - Note 4 - Redeemable Noncontrolling Interest",
     "role": "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
     "shortName": "Note 4 - Redeemable Noncontrolling Interest",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:RedeemableNoncontrollingInterestTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "011 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities",
     "role": "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
     "shortName": "Note 5 - Derivative Instruments and Hedging Activities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "012 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss",
     "role": "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
     "shortName": "Note 6 - Accumulated Other Comprehensive Loss",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "013 - Disclosure - Note 7 - Segment Reporting",
     "role": "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
     "shortName": "Note 7 - Segment Reporting",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "014 - Disclosure - Note 8 - Balance Sheet Details",
     "role": "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details",
     "shortName": "Note 8 - Balance Sheet Details",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "015 - Disclosure - Note 9 - Goodwill and Intangible Assets",
     "role": "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets",
     "shortName": "Note 9 - Goodwill and Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeasesOfLesseeDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "016 - Disclosure - Note 10 - Leases",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-",
     "shortName": "Note 10 - Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeasesOfLesseeDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "017 - Disclosure - Note 11 - Product Warranty Obligations",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
     "shortName": "Note 11 - Product Warranty Obligations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "018 - Disclosure - Note 12 - Credit Agreements",
     "role": "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
     "shortName": "Note 12 - Credit Agreements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "001 - Statement - Consolidated Balance Sheets",
     "role": "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:TreasuryStockTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "019 - Disclosure - Note 13 - Stock Repurchase Program",
     "role": "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
     "shortName": "Note 13 - Stock Repurchase Program",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:TreasuryStockTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "020 - Disclosure - Note 14 - Earnings Per Share",
     "role": "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
     "shortName": "Note 14 - Earnings Per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "021 - Disclosure - Note 15 - Income Taxes",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes",
     "shortName": "Note 15 - Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "022 - Disclosure - Note 16 - Benefit Plans",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
     "shortName": "Note 16 - Benefit Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "023 - Disclosure - Note 17 - Share Plans",
     "role": "http://www.generac.com/20191231/role/statement-note-17-share-plans",
     "shortName": "Note 17 - Share Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "024 - Disclosure - Note 18 - Commitments and Contingencies",
     "role": "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies",
     "shortName": "Note 18 - Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "025 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited)",
     "role": "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited",
     "shortName": "Note 19 - Quarterly Financial Information (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "026 - Disclosure - Note 20 - Valuation and Qualifying Accounts",
     "role": "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts",
     "shortName": "Note 20 - Valuation and Qualifying Accounts",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "027 - Disclosure - Note 21 - Subsequent Events",
     "role": "http://www.generac.com/20191231/role/statement-note-21-subsequent-events",
     "shortName": "Note 21 - Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "028 - Disclosure - Significant Accounting Policies (Policies)",
     "role": "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies",
     "shortName": "Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": null,
     "groupType": "statement",
     "isDefault": "false",
     "longName": "002 - Statement - Consolidated Balance Sheets (Parentheticals)",
     "role": "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals",
     "shortName": "Consolidated Balance Sheets (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "029 - Disclosure - Note 2 - Summary of Accounting Policies (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables",
     "shortName": "Note 2 - Summary of Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "030 - Disclosure - Note 3 - Acquisitions (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables",
     "shortName": "Note 3 - Acquisitions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "gnrc:RedeemableNoncontrollingInterestTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RedeemableNoncontrollingInterestTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "031 - Disclosure - Note 4 - Redeemable Noncontrolling Interest (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables",
     "shortName": "Note 4 - Redeemable Noncontrolling Interest (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "gnrc:RedeemableNoncontrollingInterestTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RedeemableNoncontrollingInterestTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "032 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables",
     "shortName": "Note 5 - Derivative Instruments and Hedging Activities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "033 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables",
     "shortName": "Note 6 - Accumulated Other Comprehensive Loss (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "034 - Disclosure - Note 7 - Segment Reporting (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables",
     "shortName": "Note 7 - Segment Reporting (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "035 - Disclosure - Note 8 - Balance Sheet Details (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables",
     "shortName": "Note 8 - Balance Sheet Details (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "036 - Disclosure - Note 9 - Goodwill and Intangible Assets (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables",
     "shortName": "Note 9 - Goodwill and Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "037 - Disclosure - Note 10 - Leases (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-tables",
     "shortName": "Note 10 - Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "038 - Disclosure - Note 11 - Product Warranty Obligations (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables",
     "shortName": "Note 11 - Product Warranty Obligations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "003 - Statement - Consolidated Statements of Comprehensive Income",
     "role": "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
     "shortName": "Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShortTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "039 - Disclosure - Note 12 - Credit Agreements (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables",
     "shortName": "Note 12 - Credit Agreements (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShortTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "040 - Disclosure - Note 14 - Earnings Per Share (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables",
     "shortName": "Note 14 - Earnings Per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "041 - Disclosure - Note 15 - Income Taxes (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables",
     "shortName": "Note 15 - Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "042 - Disclosure - Note 16 - Benefit Plans (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables",
     "shortName": "Note 16 - Benefit Plans (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "043 - Disclosure - Note 17 - Share Plans (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables",
     "shortName": "Note 17 - Share Plans (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "044 - Disclosure - Note 19 - Quarterly Financial Information (Unaudited) (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables",
     "shortName": "Note 19 - Quarterly Financial Information (Unaudited) (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:ValuationAndQualifyingAccountsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "045 - Disclosure - Note 20 - Valuation and Qualifying Accounts (Tables)",
     "role": "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables",
     "shortName": "Note 20 - Valuation and Qualifying Accounts (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "gnrc:ValuationAndQualifyingAccountsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "046 - Disclosure - Note 2 - Summary of Accounting Policies (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
     "shortName": "Note 2 - Summary of Accounting Policies (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DebtPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "gnrc:AmortizationOfFinancingCostsAndDebtDiscountPremium",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MinimumMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "047 - Disclosure - Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
     "shortName": "Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_PropertyPlantAndEquipmentByTypeAxis-LandImprovementsMember_RangeAxis-MinimumMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "048 - Disclosure - Note 3 - Acquisitions (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
     "shortName": "Note 3 - Acquisitions (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-04-26_2019-04-26_BusinessAcquisitionAxis-PikaMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "004 - Statement - Consolidated Statements of Stockholders' Equity",
     "role": "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-12-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "049 - Disclosure - Note 3 - Acquisitions - Preliminary Price Allocation (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
     "shortName": "Note 3 - Acquisitions - Preliminary Price Allocation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-06-01_BusinessAcquisitionAxis-SelmecMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "050 - Disclosure - Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details",
     "shortName": "Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_StatementScenarioAxis-ProFormaMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "gnrc:RedeemableNoncontrollingInterestTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-03-01_OwnershipAxis-PramacMember",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "051 - Disclosure - Note 4 - Redeemable Noncontrolling Interest (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual",
     "shortName": "Note 4 - Redeemable Noncontrolling Interest (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "gnrc:RedeemableNoncontrollingInterestTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-03-01_OwnershipAxis-PramacMember",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:MinorityInterestChangeInRedemptionValue",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "052 - Disclosure - Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
     "shortName": "Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RedeemableNoncontrollingInterestTableTextBlock",
       "gnrc:RedeemableNoncontrollingInterestTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2016-12-31_StatementEquityComponentsAxis-RedeemableNoncontrollingInterestMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "053 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
     "shortName": "Note 5 - Derivative Instruments and Hedging Activities (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "gnrc:DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DerivativeFairValueOfDerivativeNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "054 - Disclosure - Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details",
     "shortName": "Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31_DerivativeInstrumentRiskAxis-CommodityContractMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel2Member",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DerivativeFairValueOfDerivativeNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "055 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
     "shortName": "Note 6 - Accumulated Other Comprehensive Loss (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "056 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
     "shortName": "Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_StatementEquityComponentsAxis-AccumulatedTranslationAdjustmentMember",
      "decimals": "-4",
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-4",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanSettlementsBenefitObligation",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "057 - Disclosure - Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
     "shortName": "Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock",
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember",
      "decimals": "-4",
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanSettlementsBenefitObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "058 - Disclosure - Note 7 - Segment Reporting (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual",
     "shortName": "Note 7 - Segment Reporting (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": null,
     "groupType": "statement",
     "isDefault": "false",
     "longName": "005 - Statement - Consolidated Statements of Stockholders' Equity (Parentheticals)",
     "role": "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals",
     "shortName": "Consolidated Statements of Stockholders' Equity (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "059 - Disclosure - Note 7 - Segment Reporting - Net Sales by Products and Services (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
     "shortName": "Note 7 - Segment Reporting - Net Sales by Products and Services (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_StatementBusinessSegmentsAxis-DomesticMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "gnrc:AdjustedEBITDA",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060 - Disclosure - Note 7 - Segment Reporting - Segment Information (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
     "shortName": "Note 7 - Segment Reporting - Segment Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "061 - Disclosure - Note 7 - Segment Reporting- Schedule of Error Corrections (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details",
     "shortName": "Note 7 - Segment Reporting- Schedule of Error Corrections (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "062 - Disclosure - Note 8 - Balance Sheet Details (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual",
     "shortName": "Note 8 - Balance Sheet Details (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "063 - Disclosure - Note 8 - Balance Sheet Details - Inventories (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details",
     "shortName": "Note 8 - Balance Sheet Details - Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "064 - Disclosure - Note 8 - Balance Sheet Details - Property and Equipment (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details",
     "shortName": "Note 8 - Balance Sheet Details - Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "065 - Disclosure - Note 9 - Goodwill and Intangible Assets (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual",
     "shortName": "Note 9 - Goodwill and Intangible Assets (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "066 - Disclosure - Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details",
     "shortName": "Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GoodwillAcquiredDuringPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfIntangibleAssetsTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "067 - Disclosure - Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details",
     "shortName": "Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfIntangibleAssetsTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2018-01-01_2018-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesRentExpenseNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "068 - Disclosure - Note 10 - Leases (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
     "shortName": "Note 10 - Leases (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2018-01-01_2018-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesRentExpenseNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "006 - Statement - Consolidated Statements of Cash Flows",
     "role": "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AmortizationOfFinancingCostsAndDiscounts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "069 - Disclosure - Note 10 - Leases - Leases Cost (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details",
     "shortName": "Note 10 - Leases - Leases Cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "gnrc:FinanceLeaseRightOfUseAssetGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "070 - Disclosure - Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
     "shortName": "Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "gnrc:FinanceLeaseRightOfUseAssetGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfLeasesCashFlowInformationTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "071 - Disclosure - Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details",
     "shortName": "Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfLeasesCashFlowInformationTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:LeaseTermAndDiscountRateTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "072 - Disclosure - Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details",
     "shortName": "Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:LeaseTermAndDiscountRateTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "073 - Disclosure - Note 10 - Leases - Maturities of Lease liabilities (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
     "shortName": "Note 10 - Leases - Maturities of Lease liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LeasesOfLesseeDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-4",
      "first": true,
      "lang": null,
      "name": "us-gaap:CapitalizedContractCostNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "074 - Disclosure - Note 11 - Product Warranty Obligations 1 (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
     "shortName": "Note 11 - Product Warranty Obligations 1 (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-4",
      "first": true,
      "lang": null,
      "name": "us-gaap:CapitalizedContractCostNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": null,
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "075 - Disclosure - Note 11 - Product Warranty Obligations 2 (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual",
     "shortName": "Note 11 - Product Warranty Obligations 2 (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "076 - Disclosure - Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details",
     "shortName": "Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "077 - Disclosure - Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details",
     "shortName": "Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "078 - Disclosure - Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
     "shortName": "Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2020-01-01",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "007 - Disclosure - Note 1 - Description of Business",
     "role": "http://www.generac.com/20191231/role/statement-note-1-description-of-business-",
     "shortName": "Note 1 - Description of Business",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrualCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "079 - Disclosure - Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
     "shortName": "Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrualCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainsLossesOnExtinguishmentOfDebt",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "080 - Disclosure - Note 12 - Credit Agreements (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
     "shortName": "Note 12 - Credit Agreements (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2018-04-01_2018-06-30_CreditFacilityAxis-AmendedABLFacilityMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GainsLossesOnExtinguishmentOfDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShortTermBorrowings",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "081 - Disclosure - Note 12 - Credit Agreements - Short-term Borrowings (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details",
     "shortName": "Note 12 - Credit Agreements - Short-term Borrowings (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShortTermDebtTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31_ShortTermDebtTypeAxis-ABLRevolvingCreditFacilityMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ShortTermBorrowings",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-7",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "082 - Disclosure - Note 12 - Credit Agreements - Long-term Borrowings (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details",
     "shortName": "Note 12 - Credit Agreements - Long-term Borrowings (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-7",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "083 - Disclosure - Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details",
     "shortName": "Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:TreasuryStockTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-09-30",
      "decimals": "-7",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "084 - Disclosure - Note 13 - Stock Repurchase Program (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
     "shortName": "Note 13 - Stock Repurchase Program (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:TreasuryStockTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-09-30",
      "decimals": "-7",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2018-01-01_2018-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "085 - Disclosure - Note 14 - Earnings Per Share (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual",
     "shortName": "Note 14 - Earnings Per Share (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2018-01-01_2018-12-31_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis-EmployeeStockOptionMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-10-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "086 - Disclosure - Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
     "shortName": "Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-4",
      "lang": null,
      "name": "gnrc:NetIncomeLossAvailableToCommonStockholders",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredIncomeTaxAssetsNet",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "087 - Disclosure - Note 15 - Income Taxes (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual",
     "shortName": "Note 15 - Income Taxes (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "gnrc:TaxCreditCarryForwardStateResearchAndDevelopment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "088 - Disclosure - Note 15 - Income Taxes - Provision for Income Taxes (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details",
     "shortName": "Note 15 - Income Taxes - Provision for Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "008 - Disclosure - Note 2 - Summary of Accounting Policies",
     "role": "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
     "shortName": "Note 2 - Summary of Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "089 - Disclosure - Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details",
     "shortName": "Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090 - Disclosure - Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details",
     "shortName": "Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2017-12-31",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "091 - Disclosure - Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details",
     "shortName": "Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-4",
      "first": true,
      "lang": null,
      "name": "gnrc:EmployerContributionUnderMedicalAndDentalPlan",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "092 - Disclosure - Note 16 - Benefit Plans (Details Textual)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
     "shortName": "Note 16 - Benefit Plans (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-4",
      "first": true,
      "lang": null,
      "name": "gnrc:EmployerContributionUnderMedicalAndDentalPlan",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R94": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "093 - Disclosure - Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
     "shortName": "Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R95": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "094 - Disclosure - Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details",
     "shortName": "Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R96": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanInterestCost",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "095 - Disclosure - Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
     "shortName": "Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R97": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAssumptionsUsedTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "096 - Disclosure - Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details",
     "shortName": "Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAssumptionsUsedTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R98": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "097 - Disclosure - Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
     "shortName": "Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAllocationOfPlanAssetsTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanWeightedAverageAssetAllocations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R99": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "098 - Disclosure - Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)",
     "role": "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
     "shortName": "Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "gnrc:ScheduleOfFairValueOfPlanAssetsTableTextBlock",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "gnrc20191231_10k.htm",
      "contextRef": "i_2018-12-31_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel1Member",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanFairValueOfPlanAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 95,
   "tag": {
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2017-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "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"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r518"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "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"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentInformationLineItems": {
     "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": "Document Information [Line Items]"
       }
      }
     },
     "localname": "DocumentInformationLineItems",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_DocumentInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package.",
        "label": "Document Information [Table]"
       }
      }
     },
     "localname": "DocumentInformationTable",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "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"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r517"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.",
        "label": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-document-and-entity-information",
      "http://www.generac.com/20191231/role/statement-note-1-description-of-business-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables",
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables",
      "http://www.generac.com/20191231/role/statement-note-21-subsequent-events",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables",
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r520"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "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"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r519"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "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"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-document-and-entity-information",
      "http://www.generac.com/20191231/role/statement-note-1-description-of-business-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables",
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables",
      "http://www.generac.com/20191231/role/statement-note-21-subsequent-events",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables",
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r515"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r516"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "gnrc_ABLRevolvingCreditFacilityMember": {
     "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": "ABL Revolving Credit Facility [Member]"
       }
      }
     },
     "localname": "ABLRevolvingCreditFacilityMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_AdjustedEBITDA": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents net income before interest expense, taxes, depreciation and amortization, as further adjusted for other non-cash items",
        "label": "Adjusted EBITDA",
        "terseLabel": "Total adjusted EBITDA"
       }
      }
     },
     "localname": "AdjustedEBITDA",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_AdjustedLIBORRateMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adjusted interest rate at which a bank borrows funds from other banks in the London interbank market, plus an applicable margin.",
        "label": "Adjusted LIBOR Rate [Member]"
       }
      }
     },
     "localname": "AdjustedLIBORRateMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_AmendedABLFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The description or name of the credit facility.",
        "label": "Amended ABL Facility [Member]"
       }
      }
     },
     "localname": "AmendedABLFacilityMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the aggregate decrease in the liability for accruals related to extended product warranties issued during the reporting period, due to amortization of deferred revenue.",
        "label": "gnrc_AmortizationOfDeferredRevenueOnExtendedWarrantyContracts",
        "negatedLabel": "Amortization of deferred revenue contracts"
       }
      }
     },
     "localname": "AmortizationOfDeferredRevenueOnExtendedWarrantyContracts",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of non-cash expense included in interest expense to issue and amortize debt discount and obtain financing associated with the related debt instruments.",
        "label": "gnrc_AmortizationOfFinancingCostsAndDebtDiscountPremium",
        "terseLabel": "Amortization of Financing Costs and Debt Discount Premium"
       }
      }
     },
     "localname": "AmortizationOfFinancingCostsAndDebtDiscountPremium",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_AmountFinancedByDealers": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount financed by dealers to purchase goods from the entity.",
        "label": "gnrc_AmountFinancedByDealers",
        "terseLabel": "Amount Financed by Dealers"
       }
      }
     },
     "localname": "AmountFinancedByDealers",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents amounts adjusted from the domestic segment to the international segment",
        "label": "Amounts Adjusted from the Domestic Segment to the International Segment [Member]"
       }
      }
     },
     "localname": "AmountsAdjustedFromTheDomesticSegmentToTheInternationalSegmentMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The term of a put option available to the noncontrolling interest of a business acquired by the reporting entity.",
        "label": "gnrc_BusinessAcquisitionNoncontrollingInterestTermOfPutOption",
        "terseLabel": "Business Acquisition, Noncontrolling Interest, Term of Put Option"
       }
      }
     },
     "localname": "BusinessAcquisitionNoncontrollingInterestTermOfPutOption",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of acquisition cost of a business combination allocated to an identifiable intangible asset including goodwill.",
        "label": "gnrc_BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill",
        "terseLabel": "Business Acquisition, Purchase Price Allocation, Intangible Assets Including Goodwill"
       }
      }
     },
     "localname": "BusinessAcquisitionPurchasePriceAllocationIntangibleAssetsIncludingGoodwill",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_BusinessAcquisitionTermOfCallOption": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The term of call option available to the company in a business acquisition transaction.",
        "label": "gnrc_BusinessAcquisitionTermOfCallOption",
        "terseLabel": "Business Acquisition, Term of Call Option"
       }
      }
     },
     "localname": "BusinessAcquisitionTermOfCallOption",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the changes in fair value of liabilities arising from contingencies in a business acquisition.",
        "label": "gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue",
        "terseLabel": "Business Combination, Liabilities Arising from Contingencies, Changes in Fair Value"
       }
      }
     },
     "localname": "BusinessCombinationLiabilitiesArisingFromContingenciesChangesInFairValue",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the interest accretion related to liabilities arising from contingencies in a business acquisition.",
        "label": "gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion",
        "terseLabel": "Business Combination, Liabilities Arising from Contingencies, Interest Accretion"
       }
      }
     },
     "localname": "BusinessCombinationLiabilitiesArisingFromContingenciesInterestAccretion",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the other fair Value re-measurement adjustments related to liabilities arising from contingencies in a business acquisition.",
        "label": "gnrc_BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments",
        "terseLabel": "Business Combination, Liabilities Arising from Contingencies, Other Fair Value Re-measurement Adjustments"
       }
      }
     },
     "localname": "BusinessCombinationLiabilitiesArisingFromContingenciesOtherFairValueRemeasurementAdjustments",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the total assets acquired from a business combination which includes identifiable assets acquired and liabilities assumed assets, including goodwill.",
        "label": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
        "totalLabel": "Total assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accrued wages and employee benefits due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits",
        "verboseLabel": "Accrued wages and employee benefits"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedWagesAndEmployeeBenefits",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_BusinessOptimizationExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents charges relating to business optimization and restructuring costs.",
        "label": "gnrc_BusinessOptimizationExpense",
        "negatedLabel": "Business optimization expenses (6)"
       }
      }
     },
     "localname": "BusinessOptimizationExpense",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_CaptivaEnergySolutionsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information about Captiva Energy Solutions.",
        "label": "Captiva Energy Solutions [Member]"
       }
      }
     },
     "localname": "CaptivaEnergySolutionsMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_ChangeInNoncontrollingInterestEquityImpact": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents equity impact of the change in non-controlling interest.",
        "label": "gnrc_ChangeInNoncontrollingInterestEquityImpact",
        "negatedLabel": "Change in noncontrolling interest share"
       }
      }
     },
     "localname": "ChangeInNoncontrollingInterestEquityImpact",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_CommercialAndIndustrialPowerProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents products and services related to commercial and industrial power.",
        "label": "Commercial and Industrial Power Products [Member]"
       }
      }
     },
     "localname": "CommercialAndIndustrialPowerProductsMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_DeferredCompensationArrangementWithIndividualSharesGranted": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares granted in a deferred compensation arrangement with an individual.",
        "label": "gnrc_DeferredCompensationArrangementWithIndividualSharesGranted",
        "terseLabel": "Deferred Compensation Arrangement with Individual, Shares Granted"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualSharesGranted",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "gnrc_DeferredCompensationArrangementWithIndividualSharesVested": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares vested during the period pursuant to the terms of a deferred compensation arrangement.",
        "label": "gnrc_DeferredCompensationArrangementWithIndividualSharesVested",
        "terseLabel": "Deferred Compensation Arrangement with Individual, Shares Vested"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualSharesVested",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense expected to be recognized during the next fiscal year following the latest fiscal year for deferred costs.",
        "label": "gnrc_DeferredCostsAmortizationExpenseNextTwelveMonths",
        "terseLabel": "Deferred Costs Amortization Expense, Next Twelve Months"
       }
      }
     },
     "localname": "DeferredCostsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DeferredCostsAmortizationExpenseYearFive": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense expected to be recognized during the fifth fiscal year following the latest fiscal year for deferred costs.",
        "label": "gnrc_DeferredCostsAmortizationExpenseYearFive",
        "terseLabel": "Deferred Costs Amortization Expense, Year Five"
       }
      }
     },
     "localname": "DeferredCostsAmortizationExpenseYearFive",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DeferredCostsAmortizationExpenseYearFour": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense expected to be recognized during the fourth fiscal year following the latest fiscal year for deferred costs.",
        "label": "gnrc_DeferredCostsAmortizationExpenseYearFour",
        "terseLabel": "Deferred Costs Amortization Expense, Year Four"
       }
      }
     },
     "localname": "DeferredCostsAmortizationExpenseYearFour",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DeferredCostsAmortizationExpenseYearThree": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense expected to be recognized during the third fiscal year following the latest fiscal year for deferred costs.",
        "label": "gnrc_DeferredCostsAmortizationExpenseYearThree",
        "terseLabel": "Deferred Costs Amortization Expense, Year Three"
       }
      }
     },
     "localname": "DeferredCostsAmortizationExpenseYearThree",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DeferredCostsAmortizationExpenseYearTwo": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense expected to be recognized during the second fiscal year following the latest fiscal year for deferred costs.",
        "label": "gnrc_DeferredCostsAmortizationExpenseYearTwo",
        "terseLabel": "Deferred Costs Amortization Expense, Year Two"
       }
      }
     },
     "localname": "DeferredCostsAmortizationExpenseYearTwo",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The component of income tax expense for the period representing the increase (decrease) in the entity's deferred tax assets and liabilities pertaining to continuing operations before adjustment of change in valuation allowance.",
        "label": "gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance",
        "totalLabel": "Deferred"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in benefit obligation of defined benefit plan from annuities purchased.",
        "label": "gnrc_DefinedBenefitPlanBenefitObligationAnnuitiesPurchased",
        "negatedLabel": "Annuities purchased"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligationAnnuitiesPurchased",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in plan assets of defined benefit plan from annuities purchased.",
        "label": "gnrc_DefinedBenefitPlanPlanAssetsAnnuitiesPurchased",
        "negatedTerseLabel": "Annuities purchased"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsAnnuitiesPurchased",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of weighted average assumptions used in calculating benefit obligation.",
        "label": "Defined Benefit Plan, Weighted Average Assumptions Used in Calculating Benefit Obligation [Table Text Block]"
       }
      }
     },
     "localname": "DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingBenefitObligationTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_DefinedContributionPlanPercentageOfEligibleCompensation": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of eligible compensation of employees under defined contribution plan.",
        "label": "gnrc_DefinedContributionPlanPercentageOfEligibleCompensation",
        "terseLabel": "Defined Contribution Plan Percentage of Eligible Compensation"
       }
      }
     },
     "localname": "DefinedContributionPlanPercentageOfEligibleCompensation",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "gnrc_DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets. Amount includes additional accelerated depreciation recognized in the current period.",
        "label": "Depreciation and Amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortizationIncludingAdditionalAcceleratedDepreciation",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the fair value of derivative contracts excluding impact of credit risk.",
        "label": "gnrc_DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk",
        "terseLabel": "Derivative Assets (Liabilities), Net Fair Value of Derivative Contracts, Excluding Impact of Credit Risk"
       }
      }
     },
     "localname": "DerivativeAssetsLiabilitiesNetFairValueOfDerivativeContractsExcludingImpactOfCreditRisk",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_DiesAndToolsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Dies and Tools [Member]"
       }
      }
     },
     "localname": "DiesAndToolsMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_DomesticEquityMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This category includes information about ownership interests or the right to acquire ownership interests in corporations and other domestic legal entities which ownership interest is represented by shares of common or preferred stock.",
        "label": "Domestic Equity [Member]"
       }
      }
     },
     "localname": "DomesticEquityMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_DomesticMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information regarding domestic reportable segment.",
        "label": "Domestic [Member]"
       }
      }
     },
     "localname": "DomesticMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 5.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)",
        "label": "State tax rate differential"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateIncomeTaxRateDifferentialPercent",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 2.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": -1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state tax credit.",
        "label": "gnrc_EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent",
        "negatedLabel": "State credits"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCreditStatePercent",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "gnrc_EmployerContributionUnderMedicalAndDentalPlan": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contribution made under medical and dental plan made by the employer.",
        "label": "gnrc_EmployerContributionUnderMedicalAndDentalPlan",
        "terseLabel": "Employer Contribution under Medical and Dental Plan"
       }
      }
     },
     "localname": "EmployerContributionUnderMedicalAndDentalPlan",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_EquityAndRealEstateMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This category includes information about investment in equity ownership interests and real estate.",
        "label": "Equity and Real Estate [Member]"
       }
      }
     },
     "localname": "EquityAndRealEstateMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_EquityIncentivePlanPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the equity incentive plan (Plan).",
        "label": "Equity Incentive Plan (Plan) [Member]"
       }
      }
     },
     "localname": "EquityIncentivePlanPlanMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_ExcessPurchasePriceOverPredecessorBasis": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The element that represents the excess purchase price over predecessor basis.",
        "label": "gnrc_ExcessPurchasePriceOverPredecessorBasis",
        "negatedLabel": "Excess purchase price over predecessor basis"
       }
      }
     },
     "localname": "ExcessPurchasePriceOverPredecessorBasis",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_ExcessPurchasePriceOverPredecessorBasisMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The excess purchase price over predecessor basis.",
        "label": "Excess Purchase Price over Predecessor Basis [Member]"
       }
      }
     },
     "localname": "ExcessPurchasePriceOverPredecessorBasisMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_ExtendedWarrantyTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Expiration period of the extended warranty.",
        "label": "gnrc_ExtendedWarrantyTerm",
        "terseLabel": "Extended Warranty Term"
       }
      }
     },
     "localname": "ExtendedWarrantyTerm",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details": {
       "order": 0.0,
       "parentTag": "us-gaap_FinanceLeaseRightOfUseAsset",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accumulated depreciation for finance lease right of use assets.",
        "label": "gnrc_FinanceLeaseRightOfUseAssetAccumulatedDepreciation",
        "negatedLabel": "Accumulated depreciation - finance lease ROU assets"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAccumulatedDepreciation",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_FinanceLeaseRightOfUseAssetGross": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseRightOfUseAsset",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Gross amount of lessee's right to use underlying asset under finance lease.",
        "label": "Finance lease ROU assets, gross"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetGross",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_FiniteLivedCustomerListsNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 8.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount, net of accumulated amortization, as of the balance sheet date of an asset having a finite beneficial life acquired in a business combination or other transaction representing a favorable existing relationship with customers.",
        "label": "Customer lists, net"
       }
      }
     },
     "localname": "FiniteLivedCustomerListsNet",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_FiniteLivedPatentsAndTechnologyNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the carrying amount of finite-lived patents and technology as of balance sheet date.",
        "label": "Patents and technology, net"
       }
      }
     },
     "localname": "FiniteLivedPatentsAndTechnologyNet",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_InternationalEquityMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This category includes information about ownership interests or the right to acquire ownership interests in corporations and other international legal entities which ownership interest is represented by shares of common or preferred stock.",
        "label": "International Equity [Member]"
       }
      }
     },
     "localname": "InternationalEquityMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_InternationalMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information regarding international reportable segment.",
        "label": "International [Member]"
       }
      }
     },
     "localname": "InternationalMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_LIBORFloorRateMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Floor interest rate at which a bank borrows funds from other banks in the London interbank market.",
        "label": "LIBOR Floor Rate [Member]"
       }
      }
     },
     "localname": "LIBORFloorRateMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_LeaseTermAndDiscountRateTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of term and discount rate of lease.",
        "label": "Lease, Term and Discount Rate [Table Text Block]"
       }
      }
     },
     "localname": "LeaseTermAndDiscountRateTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Remaining term of lessee's operating lease and finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "gnrc_LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract",
        "terseLabel": "Lessee, Operating Lease and Finance Lease, Remaining Term of Contract"
       }
      }
     },
     "localname": "LesseeOperatingLeaseAndFinanceLeaseRemainingTermOfContract",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "gnrc_LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of long-term debt, sinking fund requirements, and other securities redeemable at fixed or determinable prices and dates maturing after the fourth fiscal year following the latest fiscal year.",
        "label": "After 2023"
       }
      }
     },
     "localname": "LongtermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_NetDebtLeverageRatioThreshold": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Threshold of the ratio used to calculate the financial leverage and the ability to meet financial obligations. If the borrower's actual net debt leverage ratio falls below this threshold for a certain measurement period, the applicable margin related to LIBOR rate loans can be reduced by a specified percentage.",
        "label": "gnrc_NetDebtLeverageRatioThreshold",
        "terseLabel": "Net Debt Leverage Ratio Threshold"
       }
      }
     },
     "localname": "NetDebtLeverageRatioThreshold",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "pureItemType"
    },
    "gnrc_NetDebtLeverageRatioThresholdMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the specific threshold of the company's leverage ratio according to the terms of the loan agreement.",
        "label": "Net Debt Leverage Ratio Threshold [Member]"
       }
      }
     },
     "localname": "NetDebtLeverageRatioThresholdMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_NetIncomeLossAvailableToCommonStockholders": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Net income after adjustments for redeemable noncontrolling interest redemption value.",
        "label": "gnrc_NetIncomeLossAvailableToCommonStockholders",
        "totalLabel": "Net income attributable to common shareholders"
       }
      }
     },
     "localname": "NetIncomeLossAvailableToCommonStockholders",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_NetPeriodicBenefitCostsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The type or description of the periodic benefit costs associated with the defined benefit plan.",
        "label": "Net periodic Benefit Costs [Member]"
       }
      }
     },
     "localname": "NetPeriodicBenefitCostsMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_NeurioMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information related to Neurio.",
        "label": "Neurio [Member]"
       }
      }
     },
     "localname": "NeurioMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_NoncashWritedownAndOtherAdjustments": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information about non-cash write-down and other adjustments. Includes gains/losses on disposal of assets, unrealized mark-to-market adjustments on commodity contracts, and certain foreign currency and purchase accounting related adjustments.",
        "label": "gnrc_NoncashWritedownAndOtherAdjustments",
        "negatedLabel": "Non-cash write-down and other adjustments (1)"
       }
      }
     },
     "localname": "NoncashWritedownAndOtherAdjustments",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_NoncontrollingInterestAgreementExtensionOfTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The extension of the term in the noncontrolling interest agreement.",
        "label": "gnrc_NoncontrollingInterestAgreementExtensionOfTerm",
        "terseLabel": "Noncontrolling Interest Agreement, Extension of Term"
       }
      }
     },
     "localname": "NoncontrollingInterestAgreementExtensionOfTerm",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "gnrc_NoteToFinancialStatementDetailsTextual": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note To Financial Statement Details Textual"
       }
      }
     },
     "localname": "NoteToFinancialStatementDetailsTextual",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_NotesToFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Notes To Financial Statements [Abstract]"
       }
      }
     },
     "localname": "NotesToFinancialStatementsAbstract",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_NumberOfMajorCustomers": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents number of major customers that accounts for 10 percent or more of the entity's revenues.",
        "label": "gnrc_NumberOfMajorCustomers",
        "terseLabel": "Number of Major Customers"
       }
      }
     },
     "localname": "NumberOfMajorCustomers",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "gnrc_NumberOfNewContractsEntered": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of new contracts entered into during the period mentioned.",
        "label": "gnrc_NumberOfNewContractsEntered",
        "terseLabel": "Number of New Contracts Entered"
       }
      }
     },
     "localname": "NumberOfNewContractsEntered",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of operating and finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating and finance lease liability recognized in statement of financial position.",
        "label": "Operating and Finance Lease, Liability, Maturity [Table Text Block]"
       }
      }
     },
     "localname": "OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_OperatingLeaseAndOtherAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Related to operating lease and other assets.",
        "label": "Operating Lease and Other Assets [Member]"
       }
      }
     },
     "localname": "OperatingLeaseAndOtherAssetsMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OperatingLeaseAndOtherLongtermLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Related to operating lease and other long-term liabilities.",
        "label": "Operating Lease and Other Long-term Liabilities [Member]"
       }
      }
     },
     "localname": "OperatingLeaseAndOtherLongtermLiabilitiesMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, and other liabilities classified as noncurrent.",
        "label": "Operating lease and other long-term liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 2.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 and other assets after one year or beyond the normal operating cycle, if longer.",
        "label": "Operating lease and other assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_Other": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents other non-cash items that are not categorized separately.",
        "label": "gnrc_Other",
        "negatedTerseLabel": "Other"
       }
      }
     },
     "localname": "Other",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other accrued liabilities and operating lease and other long-term liabilities.",
        "label": "Other Accrued Liabilities and Operating Lease and Other Long-term Liabilities [Member]"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesAndOperatingLeaseAndOtherLongtermLiabilitiesMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OtherAccruedLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Related to other accrued liabilities.",
        "label": "Other Accrued Liabilities [Member]"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OtherInvestmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Other investments not specified in the taxonomy.",
        "label": "Other Investment [Member]"
       }
      }
     },
     "localname": "OtherInvestmentMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OtherLinesOfCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Other contractual arrangements with lenders 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, not separately disclosed.",
        "label": "Other Lines of Credit [Member]"
       }
      }
     },
     "localname": "OtherLinesOfCreditMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OtherNetMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Related to the other, net income statement line item.",
        "label": "Other, Net [Member]"
       }
      }
     },
     "localname": "OtherNetMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_OtherProductsAndServicesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information pertaining to products and services not separately disclosed.",
        "label": "Other Products and Services [Member]"
       }
      }
     },
     "localname": "OtherProductsAndServicesMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_PerformanceShareAwardPercentage": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The percentage of the target performance share award.",
        "label": "gnrc_PerformanceShareAwardPercentage",
        "terseLabel": "Performance Share Award, Percentage"
       }
      }
     },
     "localname": "PerformanceShareAwardPercentage",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "gnrc_PikaMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Related to Pika.",
        "label": "Pika [Member]"
       }
      }
     },
     "localname": "PikaMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_PramacMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Pramac is a leading manufacturer of portable, commercial and industrial generators primarily sold under the Pramac brand, including PR Industrial S.r.1 and its subsidiaries.",
        "label": "Pramac [Member]"
       }
      }
     },
     "localname": "PramacMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Product warranty obligations included in consolidated balance sheet.",
        "label": "Product Warranty Obligations Included In Consolidated Balance Sheet [Table Text Block]"
       }
      }
     },
     "localname": "ProductWarrantyObligationsIncludedInConsolidatedBalanceSheetTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure for the useful life of long-lived, physical assets used in the normal conduct of business and not intended for resale.",
        "label": "Property Plant and Equipment, Estimated Useful Lives [Table Text Block]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_RedeemableNoncontrollingInterestMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information pertaining to redeemable noncontrolling interest.",
        "label": "Redeemable Noncontrolling Interest [Member]"
       }
      }
     },
     "localname": "RedeemableNoncontrollingInterestMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_RedeemableNoncontrollingInterestTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Entire disclosure for redeemable noncontrolling interest.",
        "label": "Redeemable Noncontrolling Interest [Text Block]"
       }
      }
     },
     "localname": "RedeemableNoncontrollingInterestTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_ResidentialPowerProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents products and services related to residential power.",
        "label": "Residential Power Products [Member]"
       }
      }
     },
     "localname": "ResidentialPowerProductsMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_RestrictedStockAndPerformanceSharesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents information about restricted stock and performance shares.",
        "label": "Restricted Stock and Performance Shares [Member]"
       }
      }
     },
     "localname": "RestrictedStockAndPerformanceSharesMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_SavingsPlan401kMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the companies defined-contribution 401(k) savings plan.",
        "label": "Savings Plan 401(k) [Member]"
       }
      }
     },
     "localname": "SavingsPlan401kMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of components of lease assets and liabilities.",
        "label": "Schedule of Components of Lease Assets and Liabilities [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of derivative assets and liabilities at fair value.",
        "label": "Schedule Of Derivative Assets (Liabilities) at Fair Value [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfDerivativeAssetsLiabilitiesAtFairValueTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_ScheduleOfFairValueOfPlanAssetsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.",
        "label": "Schedule of Fair Value of Plan Assets [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfFairValueOfPlanAssetsTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_ScheduleOfIntangibleAssetsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of intangible assets, by major asset class.",
        "label": "Schedule Of Intangible Assets [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfIntangibleAssetsTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of leases related to cash flow information.",
        "label": "Schedule of Leases Cash Flow Information [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfLeasesCashFlowInformationTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in valuation and qualifying accounts and reserves from business combination.",
        "label": "Reserves Assumed in Acquisition"
       }
      }
     },
     "localname": "SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_SecuredLeverageRatio": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Ratio used to calculate financial leverage and the ability to meet financial obligations. If the borrower's actual secured leverage ratio is below the 3.75 threshold for the annual period, the Excess Cash Flow payment requirement for that period is eliminated.",
        "label": "gnrc_SecuredLeverageRatio",
        "terseLabel": "Secured Leverage Ratio"
       }
      }
     },
     "localname": "SecuredLeverageRatio",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "pureItemType"
    },
    "gnrc_SelmecMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the information pertaining to Selmec.",
        "label": "Selmec [Member]"
       }
      }
     },
     "localname": "SelmecMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The estimated amount of dividends per share to be paid to holders of the underlying shares (expected dividends) over the option's term.",
        "label": "Expected annual dividend per share (in dollars per share)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedDividendPerShare",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period of performance measurement for share-based compensation awards, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "gnrc_SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Performance Measurement, Period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPerformanceMeasurementPeriod",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "gnrc_SharesAcquiredUnderStockRepurchasesProgramShares": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury",
        "label": "gnrc_SharesAcquiredUnderStockRepurchasesProgramShares",
        "negatedLabel": "Stock repurchases (in shares)",
        "terseLabel": "Shares Acquired Under Stock Repurchases Program, Shares"
       }
      }
     },
     "localname": "SharesAcquiredUnderStockRepurchasesProgramShares",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "gnrc_SharesAcquiredUnderStockRepurchasesProgramValue": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and are being held in treasury",
        "label": "gnrc_SharesAcquiredUnderStockRepurchasesProgramValue",
        "negatedLabel": "Stock repurchases"
       }
      }
     },
     "localname": "SharesAcquiredUnderStockRepurchasesProgramValue",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued under equity incentive plans, net of shares withheld for employee taxes.",
        "label": "Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price (in shares)"
       }
      }
     },
     "localname": "StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesShares",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "sharesItemType"
    },
    "gnrc_StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equity impact of the value of stock issued under equity incentive plans, net of shares withheld for employee taxes.",
        "label": "Common stock issued under equity incentive plans, net of shares withheld for employee taxes and strike price"
       }
      }
     },
     "localname": "StockIssuedEquityIncentivePlansNetOfSharesWithheldForEmployeeTaxesValue",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_TaxCreditCarryForwardStateResearchAndDevelopment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of the state research and development credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "gnrc_TaxCreditCarryForwardStateResearchAndDevelopment",
        "terseLabel": "Tax Credit Carry Forward State Research and Development"
       }
      }
     },
     "localname": "TaxCreditCarryForwardStateResearchAndDevelopment",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_TaxCreditCarryforwardStateManufacturing": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of the state manufacturing tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "gnrc_TaxCreditCarryforwardStateManufacturing",
        "terseLabel": "Tax Credit Carryforward State Manufacturing"
       }
      }
     },
     "localname": "TaxCreditCarryforwardStateManufacturing",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_TemporaryEquityAcquired": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Increase in temporary equity from a business acquisition.",
        "label": "gnrc_TemporaryEquityAcquired",
        "terseLabel": "Noncontrolling interest"
       }
      }
     },
     "localname": "TemporaryEquityAcquired",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_TermLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Credit facility arrangement having an initial term longer than one year or beyond the normal operating cycle, if longer.",
        "label": "Term Loan [Member]"
       }
      }
     },
     "localname": "TermLoanMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_The2019EquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information related to the 2019 Equity Incentive Plan.",
        "label": "The 2019 Equity Incentive Plan [Member]"
       }
      }
     },
     "localname": "The2019EquityIncentivePlanMember",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "gnrc_TradeNamesNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The net carrying amount as of the balance sheet date of indefinite-lived and finite-lived tradenames on the statement of financial position representing the rights acquired through registration of a trade name to gain or protect exclusive use thereof.",
        "label": "Tradenames, net"
       }
      }
     },
     "localname": "TradeNamesNet",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_TransactionCostsAndCredityFaciltyFees": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents transaction costs incurred directly in connection with any investment, as defined in our credit agreement; equity issuance, debt issuance or refinancing; together with certain fees relating to our senior secured credit facilities.",
        "label": "gnrc_TransactionCostsAndCredityFaciltyFees",
        "negatedLabel": "Transaction costs and credit facility fees (5)"
       }
      }
     },
     "localname": "TransactionCostsAndCredityFaciltyFees",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_UncommittedIncrementalTermLoanFacility": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Refers to uncommitted incremental term loan facility after amendment.",
        "label": "gnrc_UncommittedIncrementalTermLoanFacility",
        "terseLabel": "Uncommitted Incremental Term Loan Facility"
       }
      }
     },
     "localname": "UncommittedIncrementalTermLoanFacility",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "gnrc_ValuationAndQualifyingAccountsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A tabular disclosure of allowance and reserve accounts including their beginning and ending balances, as well as a reconciliation by type of activity during the period. Alternatively, disclosure of the required information may be within the footnotes to the financial statements or a supplemental schedule to the financial statements.",
        "label": "Valuation and Qualifying Accounts [Table Text Block]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsTableTextBlock",
     "nsuri": "http://www.generac.com/20191231",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "gnrc_statement-statement-note-10-leases-leases-cost-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 10 - Leases - Leases Cost (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-leases-leases-cost-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-10-leases-maturities-of-lease-liabilities-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 10 - Leases - Maturities of Lease liabilities (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-leases-maturities-of-lease-liabilities-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 10 - Leases - Supplement Balance Sheet Information Related to Leases (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-10-leases-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 10 - Leases"
       }
      }
     },
     "localname": "statement-statement-note-10-leases-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 10 - Leases - Weighted Average Remaining Lease Term and Discount Rate Information (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 11 - Product Warranty Obligations - Deferred Product Obligations (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties 2 (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 11 - Product Warranty Obligations - Recognition of Deferred Revenue Related to Extended Warranties (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 11 - Product Warranty Obligations - Reconciliation of Product Warranty Liability (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-11-product-warranty-obligations-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 11 - Product Warranty Obligations"
       }
      }
     },
     "localname": "statement-statement-note-11-product-warranty-obligations-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-12-credit-agreements-longterm-borrowings-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 12 - Credit Agreements - Long-term Borrowings (Details)"
       }
      }
     },
     "localname": "statement-statement-note-12-credit-agreements-longterm-borrowings-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 12 - Credit Agreements - Maturities of Long-term Borrowings Outstanding (Details)"
       }
      }
     },
     "localname": "statement-statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-12-credit-agreements-shortterm-borrowings-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 12 - Credit Agreements - Short-term Borrowings (Details)"
       }
      }
     },
     "localname": "statement-statement-note-12-credit-agreements-shortterm-borrowings-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-12-credit-agreements-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 12 - Credit Agreements"
       }
      }
     },
     "localname": "statement-statement-note-12-credit-agreements-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 14 - Earnings Per Share - Reconciliation of Basic and Diluted Earnings Per Share (Details)"
       }
      }
     },
     "localname": "statement-statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-14-earnings-per-share-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 14 - Earnings Per Share"
       }
      }
     },
     "localname": "statement-statement-note-14-earnings-per-share-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 15 - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-15-income-taxes-provision-for-income-taxes-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 15 - Income Taxes - Provision for Income Taxes (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-income-taxes-provision-for-income-taxes-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 15 - Income Taxes - Reconciliation of Statutory and Effective Tax Rates (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-15-income-taxes-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 15 - Income Taxes"
       }
      }
     },
     "localname": "statement-statement-note-15-income-taxes-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 15 - Income Taxes - Unrecognized Tax Benefits (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-income-taxes-unrecognized-tax-benefits-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Accumulated Benefit Obligation (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Actuarial Assumptions Used in Benefit Obligation (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Components of Net Periodic (Benefit) Cost (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Fair Value of Pension Plan's Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Reconciliation of Level 3 Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Weighted-average Asset Allocation (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 16 - Benefit Plans - Weighted-average Assumptions Used to Determine Net Periodic Pension (Benefit) Cost (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 17 - Share Plans - Summary of Restricted Share Awards Activity (Details)"
       }
      }
     },
     "localname": "statement-statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-17-share-plans-summary-of-stock-option-activity-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 17 - Share Plans - Summary of Stock Option Activity (Details)"
       }
      }
     },
     "localname": "statement-statement-note-17-share-plans-summary-of-stock-option-activity-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-17-share-plans-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 17 - Share Plans"
       }
      }
     },
     "localname": "statement-statement-note-17-share-plans-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 17 - Share Plans - Weighted-average Assumptions used in the Black-Scholes-Merton Option Pricing Model (Details)"
       }
      }
     },
     "localname": "statement-statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 19 - Quarterly Financial Information (Unaudited)"
       }
      }
     },
     "localname": "statement-statement-note-19-quarterly-financial-information-unaudited-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 19 - Quarterly Financial Information (Unaudited) - Unaudited Quarterly Financial Information (Details)"
       }
      }
     },
     "localname": "statement-statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 2 - Summary of Accounting Policies - Property and Equipment Estimated Useful Lives (Details)"
       }
      }
     },
     "localname": "statement-statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-2-summary-of-accounting-policies-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 2 - Summary of Accounting Policies"
       }
      }
     },
     "localname": "statement-statement-note-2-summary-of-accounting-policies-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details)"
       }
      }
     },
     "localname": "statement-statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-20-valuation-and-qualifying-accounts-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 20 - Valuation and Qualifying Accounts"
       }
      }
     },
     "localname": "statement-statement-note-20-valuation-and-qualifying-accounts-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-3-acquisitions-preliminary-price-allocation-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 3 - Acquisitions - Preliminary Price Allocation (Details)"
       }
      }
     },
     "localname": "statement-statement-note-3-acquisitions-preliminary-price-allocation-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-3-acquisitions-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 3 - Acquisitions"
       }
      }
     },
     "localname": "statement-statement-note-3-acquisitions-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 3 - Acquisitions - Unaudited Pro Forma Information (Details)"
       }
      }
     },
     "localname": "statement-statement-note-3-acquisitions-unaudited-pro-forma-information-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 4 - Redeemable Noncontrolling Interest - Redeemable Noncontrolling Interest (Details)"
       }
      }
     },
     "localname": "statement-statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-4-redeemable-noncontrolling-interest-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 4 - Redeemable Noncontrolling Interest"
       }
      }
     },
     "localname": "statement-statement-note-4-redeemable-noncontrolling-interest-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)"
       }
      }
     },
     "localname": "statement-statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-5-derivative-instruments-and-hedging-activities-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 5 - Derivative Instruments and Hedging Activities"
       }
      }
     },
     "localname": "statement-statement-note-5-derivative-instruments-and-hedging-activities-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 6 - Accumulated Other Comprehensive Loss - Disclosure of Changes in Accumulated Other Comprehensive Loss (Details)"
       }
      }
     },
     "localname": "statement-statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 6 - Accumulated Other Comprehensive Loss - Reclassifications from AOCL (Details)"
       }
      }
     },
     "localname": "statement-statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-6-accumulated-other-comprehensive-loss-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 6 - Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "statement-statement-note-6-accumulated-other-comprehensive-loss-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 7 - Segment Reporting - Net Sales by Products and Services (Details)"
       }
      }
     },
     "localname": "statement-statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 7 - Segment Reporting- Schedule of Error Corrections (Details)"
       }
      }
     },
     "localname": "statement-statement-note-7-segment-reporting-schedule-of-error-corrections-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-7-segment-reporting-segment-information-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 7 - Segment Reporting - Segment Information (Details)"
       }
      }
     },
     "localname": "statement-statement-note-7-segment-reporting-segment-information-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-7-segment-reporting-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 7 - Segment Reporting"
       }
      }
     },
     "localname": "statement-statement-note-7-segment-reporting-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-8-balance-sheet-details-inventories-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 8 - Balance Sheet Details - Inventories (Details)"
       }
      }
     },
     "localname": "statement-statement-note-8-balance-sheet-details-inventories-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-8-balance-sheet-details-property-and-equipment-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 8 - Balance Sheet Details - Property and Equipment (Details)"
       }
      }
     },
     "localname": "statement-statement-note-8-balance-sheet-details-property-and-equipment-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-8-balance-sheet-details-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 8 - Balance Sheet Details"
       }
      }
     },
     "localname": "statement-statement-note-8-balance-sheet-details-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 9 - Goodwill and Intangible Assets - Carrying Amount of Goodwill (Details)"
       }
      }
     },
     "localname": "statement-statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 9 - Goodwill and Intangible Assets - Summary of Intangible Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-note-9-goodwill-and-intangible-assets-tables": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Note 9 - Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "statement-statement-note-9-goodwill-and-intangible-assets-tables",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "gnrc_statement-statement-significant-accounting-policies-policies": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Significant Accounting Policies"
       }
      }
     },
     "localname": "statement-statement-significant-accounting-policies-policies",
     "nsuri": "http://www.generac.com/20191231",
     "xbrltype": "stringItemType"
    },
    "srt_BoardOfDirectorsChairmanMember": {
     "auth_ref": [
      "r168"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Leader of board of directors.",
        "label": "Board of Directors Chairman [Member]"
       }
      }
     },
     "localname": "BoardOfDirectorsChairmanMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Upper limit of the provided range.",
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Lower limit of the provided range.",
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_OwnershipAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by name of entity in which ownership interest is disclosed. Excludes equity method investee and named security investment.",
        "label": "Ownership [Axis]"
       }
      }
     },
     "localname": "OwnershipAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_OwnershipDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of entity in which ownership interest is disclosed. Excludes equity method investee and named security investment.",
        "label": "Ownership [Domain]"
       }
      }
     },
     "localname": "OwnershipDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProFormaMember": {
     "auth_ref": [
      "r215",
      "r473"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information reported based on historical fact adjusted for fully or partially assumed fact. Excludes information reported for future period (forecast).",
        "label": "Pro Forma [Member]"
       }
      }
     },
     "localname": "ProFormaMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r165",
      "r253",
      "r256",
      "r507",
      "r508"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by product and service, or group of similar products and similar services.",
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Product or service, or a group of similar products or similar services.",
        "label": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median.",
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median.",
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts.",
        "label": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock": {
     "auth_ref": [
      "r123",
      "r523"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Schedule of Valuation and Qualifying Accounts Disclosure [Text Block]"
       }
      }
     },
     "localname": "ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts"
     ],
     "xbrltype": "textBlockItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Geographical area.",
        "label": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r166",
      "r253",
      "r257",
      "r509",
      "r511",
      "r513",
      "r521",
      "r522"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by geographical components.",
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r215",
      "r473"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts.",
        "label": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r168",
      "r472"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by title of individual or nature of relationship to individual or group of individuals.",
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Title of individual, or nature of relationship to individual or group of individuals.",
        "label": "Title of Individual [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingStandardsUpdate201602Member": {
     "auth_ref": [
      "r455"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accounting Standards Update 2016-02 Leases (Topic 842).",
        "label": "Accounting Standards Update 2016-02 [Member]"
       }
      }
     },
     "localname": "AccountingStandardsUpdate201602Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r41"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "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]"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r4",
      "r21",
      "r169",
      "r170",
      "r254"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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, less allowance for doubtful accounts of $6,968 and $4,873 at December 31, 2019 and 2018, respectively"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember": {
     "auth_ref": [
      "r62",
      "r68",
      "r70",
      "r286",
      "r411"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated other comprehensive (income) loss related to defined benefit plans attributable to the parent.",
        "label": "Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedDefinedBenefitPlansAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r39",
      "r207"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details": {
       "order": 0.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": "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
        "negatedTerseLabel": "Accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember": {
     "auth_ref": [
      "r61",
      "r68",
      "r70",
      "r410"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) resulting from gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges, attributable to the parent.",
        "label": "Accumulated Net Gain (Loss) from Cash Flow Hedges Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r65",
      "r67",
      "r68"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.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 loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r64",
      "r68",
      "r70",
      "r411"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "auth_ref": [
      "r60",
      "r68",
      "r70",
      "r411"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) resulting from 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, attributable to the parent.",
        "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedTranslationAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r22"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 5.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"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "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]"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForErrorCorrectionDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the types error corrections made to the financial statements.",
        "label": "Adjustments for Error Correction [Domain]"
       }
      }
     },
     "localname": "AdjustmentsForErrorCorrectionDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r125"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by new accounting pronouncement.",
        "label": "Adjustments for New Accounting Pronouncements [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r305",
      "r307",
      "r340",
      "r341"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "Share-based compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "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.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r345"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for advertising cost.",
        "label": "Advertising Cost [Policy Text Block]"
       }
      }
     },
     "localname": "AdvertisingCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r346"
     ],
     "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": "us-gaap_AdvertisingExpense",
        "terseLabel": "Advertising Expense"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r307",
      "r333",
      "r339"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "us-gaap_AllocatedShareBasedCompensationExpense",
        "terseLabel": "Share-based Payment Arrangement, Expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForCreditLossMember": {
     "auth_ref": [
      "r122"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Allowance for credit loss from right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "SEC Schedule, 12-09, Allowance, Credit Loss [Member]"
       }
      }
     },
     "localname": "AllowanceForCreditLossMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r27",
      "r172",
      "r177"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts receivable, allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCostsAndDiscounts": {
     "auth_ref": [
      "r108",
      "r450"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.",
        "label": "Amortization of original issue discount and deferred financing costs"
       }
      }
     },
     "localname": "AmortizationOfFinancingCostsAndDiscounts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r108",
      "r193",
      "r199"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "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 intangibles",
        "terseLabel": "Amortization of Intangible Assets, Total",
        "verboseLabel": "Amortization of intangible assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r137"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
        "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "auth_ref": [
      "r137"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of antidilutive security.",
        "label": "Antidilutive Securities [Axis]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "auth_ref": [
      "r137"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.",
        "label": "Antidilutive Securities, Name [Domain]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r161",
      "r481",
      "r496"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r5",
      "r6",
      "r57"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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": "us-gaap_AssetsCurrent",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r308",
      "r336"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r423",
      "r427"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BaseRateMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Minimum rate investor will accept.",
        "label": "Base Rate [Member]"
       }
      }
     },
     "localname": "BaseRateMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Building and Building Improvements [Member]"
       }
      }
     },
     "localname": "BuildingAndBuildingImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "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]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r387",
      "r388"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": {
     "auth_ref": [
      "r385"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.",
        "label": "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired",
        "terseLabel": "Business Acquisition, Percentage of Voting Interests Acquired"
       }
      }
     },
     "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock": {
     "auth_ref": [
      "r386"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the nature and amount of any material, nonrecurring adjustments directly attributable to the business combination(s) included in the reported pro forma revenue and earnings (supplemental pro forma information).",
        "label": "Business Acquisition, Pro Forma Information, Nonrecurring Adjustments [Table Text Block]"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationNonrecurringAdjustmentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r398"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized": {
     "auth_ref": [
      "r391"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount, measured at acquisition-date fair value, of all liabilities assumed that arise from contingencies and were recognized by the entity.",
        "label": "us-gaap_BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized",
        "terseLabel": "Business Combination, Liabilities Arising from Contingencies, Amount Recognized"
       }
      }
     },
     "localname": "BusinessCombinationLiabilitiesArisingFromContingenciesAmountRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 4.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "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, acquired at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets",
        "verboseLabel": "Prepaid expense and other assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 6.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
        "verboseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
        "verboseLabel": "Accounts payable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther",
        "verboseLabel": "Other accrued liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets": {
     "auth_ref": [
      "r355",
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 0.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets",
        "verboseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r355",
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 0.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
        "verboseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 2.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
        "verboseLabel": "Intangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "auth_ref": [
      "r389",
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 7.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of inventory recognized as of the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
        "verboseLabel": "Inventories"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther",
        "verboseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 1.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
        "verboseLabel": "Other assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r389",
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 5.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
        "verboseLabel": "Property and equipment"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r390"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
        "totalLabel": "Net assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "auth_ref": [
      "r1",
      "r124",
      "r156"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for the business description and basis of presentation concepts.  Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity.  Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Business Description and Basis of Presentation [Text Block]"
       }
      }
     },
     "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-1-description-of-business-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet": {
     "auth_ref": [
      "r453"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The total gross amount less the charge for the use of the long-lived depreciable assets subject to a lease meeting the criteria for capitalization.",
        "label": "us-gaap_CapitalLeasesBalanceSheetAssetsByMajorClassNet",
        "terseLabel": "Capital Leases, Balance Sheet, Assets by Major Class, Net, Total"
       }
      }
     },
     "localname": "CapitalLeasesBalanceSheetAssetsByMajorClassNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostAmortization": {
     "auth_ref": [
      "r183"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "us-gaap_CapitalizedContractCostAmortization",
        "terseLabel": "Capitalized Contract Cost, Amortization"
       }
      }
     },
     "localname": "CapitalizedContractCostAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostNet": {
     "auth_ref": [
      "r182"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "us-gaap_CapitalizedContractCostNet",
        "terseLabel": "Capitalized Contract Cost, Net, Total"
       }
      }
     },
     "localname": "CapitalizedContractCostNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r2",
      "r36",
      "r110"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 3.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",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "periodStartLabel": "Cash and cash equivalents at beginning of period"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash and cash equivalents. Cash and cash equivalents are the 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. Includes effect from exchange rate changes.",
        "label": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
        "totalLabel": "Net increase in cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r12",
      "r111",
      "r113"
     ],
     "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]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r214",
      "r216"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommodityContractMember": {
     "auth_ref": [
      "r275",
      "r431"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Derivative instrument whose primary underlying risk is tied to commodity prices.",
        "label": "Commodity Contract [Member]"
       }
      }
     },
     "localname": "CommodityContractMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "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]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r20"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r20"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r20"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r20"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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 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, par value $0.01, 500,000,000 shares authorized, 71,667,726 and 71,186,418 shares issued at December 31, 2019 and 2018, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r73",
      "r75",
      "r76"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "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": "us-gaap_ComprehensiveIncomeNetOfTax",
        "totalLabel": "Comprehensive income attributable to Generac Holdings Inc."
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r73",
      "r75",
      "r402",
      "r403",
      "r414"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.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) attributable to noncontrolling interests"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r73",
      "r75",
      "r401",
      "r414"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.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": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
        "totalLabel": "Total comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "auth_ref": [
      "r89"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.",
        "label": "Comprehensive Income (Loss) Note [Text Block]"
       }
      }
     },
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ComputerSoftwareIntangibleAssetMember": {
     "auth_ref": [
      "r194",
      "r197",
      "r396"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Collection of computer programs and related data that provide instructions to a computer, for example, but not limited to, application program, control module or operating system, that perform one or more particular functions or tasks.",
        "label": "Computer Software, Intangible Asset [Member]"
       }
      }
     },
     "localname": "ComputerSoftwareIntangibleAssetMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r151",
      "r152",
      "r441",
      "r442"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r151",
      "r152",
      "r441",
      "r442",
      "r510"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r151",
      "r152",
      "r441",
      "r442",
      "r510"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r146",
      "r493"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r151",
      "r152",
      "r441",
      "r442"
     ],
     "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": "us-gaap_ConcentrationRiskPercentage1",
        "terseLabel": "Concentration Risk, Percentage"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r151",
      "r152",
      "r441",
      "r442"
     ],
     "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]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r113",
      "r405",
      "r415",
      "r416"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.",
        "label": "Consolidation, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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]"
       }
      }
     },
     "localname": "ConstructionInProgressMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r248",
      "r249",
      "r254"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "us-gaap_ContractWithCustomerLiability",
        "terseLabel": "Contract with Customer, Liability, Total"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "auth_ref": [
      "r255"
     ],
     "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": "us-gaap_ContractWithCustomerLiabilityRevenueRecognized",
        "terseLabel": "Contract with Customer, Liability, Revenue Recognized"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r85"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.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": "Costs of goods sold"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "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]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "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]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) to equity or (increase) decrease to net assets, resulting from the cumulative effect adjustment of a new accounting principle applied in the period of adoption.",
        "label": "us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption",
        "terseLabel": "Cumulative Effect of New Accounting Principle in Period of Adoption"
       }
      }
     },
     "localname": "CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r375",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 2.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": "us-gaap_CurrentFederalTaxExpenseBenefit",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r119",
      "r377"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 0.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": "us-gaap_CurrentForeignTaxExpenseBenefit",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "CurrentForeignTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r375",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 0.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": "us-gaap_CurrentIncomeTaxExpenseBenefit",
        "totalLabel": "Current"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Current:"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r375",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 1.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": "us-gaap_CurrentStateAndLocalTaxExpenseBenefit",
        "terseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r149"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerListsMember": {
     "auth_ref": [
      "r395"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information about customers such as their name and contact information; it may also be an extensive database that includes other information about the customers such as their order history and demographic information.",
        "label": "Customer Lists [Member]"
       }
      }
     },
     "localname": "CustomerListsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtAndCapitalLeaseObligations": {
     "auth_ref": [
      "r487",
      "r503"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of short-term and long-term debt and lease obligation.",
        "label": "us-gaap_DebtAndCapitalLeaseObligations",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "DebtAndCapitalLeaseObligations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r231"
     ],
     "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]"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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": "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1",
        "terseLabel": "Debt Instrument, Basis Spread on Variable Rate"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "auth_ref": [
      "r16",
      "r227",
      "r484",
      "r495"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details": {
       "order": 2.0,
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.",
        "label": "us-gaap_DebtInstrumentCarryingAmount",
        "verboseLabel": "Term loan"
       }
      }
     },
     "localname": "DebtInstrumentCarryingAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFairValue": {
     "auth_ref": [
      "r440"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable.",
        "label": "us-gaap_DebtInstrumentFairValue",
        "terseLabel": "Debt Instrument, Fair Value Disclosure, Total"
       }
      }
     },
     "localname": "DebtInstrumentFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFeeAmount": {
     "auth_ref": [
      "r48"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of the fee that accompanies borrowing money under the debt instrument.",
        "label": "us-gaap_DebtInstrumentFeeAmount",
        "terseLabel": "Debt Instrument, Fee Amount"
       }
      }
     },
     "localname": "DebtInstrumentFeeAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscount": {
     "auth_ref": [
      "r448",
      "r451"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details": {
       "order": 1.0,
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt discount.",
        "label": "us-gaap_DebtInstrumentUnamortizedDiscount",
        "negatedTerseLabel": "Original issue discount and deferred financing costs"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtPolicyTextBlock": {
     "auth_ref": [
      "r113",
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy related to debt. Includes, but is not limited to, debt issuance costs, the effects of refinancings, method of amortizing debt issuance costs and original issue discount, and classifications of debt.",
        "label": "Debt, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "DebtPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense": {
     "auth_ref": [
      "r259",
      "r307"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The compensation expense recognized during the period pertaining to the deferred compensation arrangement.",
        "label": "us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense",
        "terseLabel": "Deferred Compensation Arrangement with Individual, Compensation Expense"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued": {
     "auth_ref": [
      "r335"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued pursuant to the terms of a deferred compensation arrangement.",
        "label": "us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued",
        "terseLabel": "Deferred Compensation Arrangement with Individual, Shares Issued"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r376",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 0.0,
       "parentTag": "gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance",
       "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": "Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "auth_ref": [
      "r40",
      "r450"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.",
        "label": "us-gaap_DeferredFinanceCostsNet",
        "terseLabel": "Debt Issuance Costs, Net, Total"
       }
      }
     },
     "localname": "DeferredFinanceCostsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r376",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 1.0,
       "parentTag": "gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance",
       "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": "Foreign"
       }
      }
     },
     "localname": "DeferredForeignIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r371"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "us-gaap_DeferredIncomeTaxAssetsNet",
        "terseLabel": "Deferred Income Tax Assets, Net, Total",
        "verboseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r108",
      "r115",
      "r376",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "us-gaap_DeferredIncomeTaxExpenseBenefit",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Deferred:"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r17",
      "r18",
      "r368",
      "r483",
      "r494"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 0.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": "us-gaap_DeferredIncomeTaxLiabilities",
        "totalLabel": "Total deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r356",
      "r371"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 3.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": "us-gaap_DeferredIncomeTaxLiabilitiesNet",
        "terseLabel": "Deferred Income Tax Liabilities, Net, Total"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r376",
      "r380"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 2.0,
       "parentTag": "gnrc_DeferredIncomeTaxExpenseBenefitBeforeAdjustmentOfValuationAllowance",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsDeferredIncome": {
     "auth_ref": [
      "r350",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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 deferred income.",
        "label": "Deferred revenue"
       }
      }
     },
     "localname": "DeferredTaxAssetsDeferredIncome",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInventory": {
     "auth_ref": [
      "r350",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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 inventory.",
        "label": "us-gaap_DeferredTaxAssetsInventory",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "DeferredTaxAssetsInventory",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r369"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "us-gaap_DeferredTaxAssetsNet",
        "totalLabel": "Total deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r348",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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": "Operating loss and credit carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r350",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 0.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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, classified as other.",
        "label": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions": {
     "auth_ref": [
      "r373"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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 pension benefits.",
        "label": "Pension obligations"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "auth_ref": [
      "r348",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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 share-based compensation.",
        "label": "Stock-based compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": {
     "auth_ref": [
      "r348",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.",
        "label": "Accrued expenses"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": {
     "auth_ref": [
      "r348",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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": "Bad debt"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r370"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 8.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "us-gaap_DeferredTaxAssetsValuationAllowance",
        "negatedLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r356",
      "r371"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "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": "us-gaap_DeferredTaxLiabilities",
        "negatedTotalLabel": "Net deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts": {
     "auth_ref": [
      "r349",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from debt issuance costs.",
        "label": "Debt refinancing costs"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesDeferredExpenseDeferredFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets": {
     "auth_ref": [
      "r350",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets including goodwill.",
        "label": "Goodwill and intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPrepaidExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "order": 0.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses.",
        "label": "Prepaid expenses"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPrepaidExpenses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r350",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details": {
       "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 property, plant, and equipment.",
        "label": "Depreciation"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation": {
     "auth_ref": [
      "r280"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of actuarial present value of benefits attributed to employee service rendered, excluding assumptions about future compensation level.",
        "label": "Accumulated benefit obligation at end of period"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax": {
     "auth_ref": [
      "r68",
      "r286"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after tax, of accumulated other comprehensive income (loss) for gain (loss) of defined benefit plan, that has not been recognized in net periodic benefit (cost) credit.",
        "label": "Net actuarial loss, net of tax"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesAfterTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets": {
     "auth_ref": [
      "r269",
      "r301"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in plan assets of defined benefit plan from actual return (loss) determined by change in fair value of plan assets adjusted for contributions, benefit payments, and other expenses.",
        "label": "Actual return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanActualReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod": {
     "auth_ref": [
      "r278",
      "r301"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, measured using unobservable inputs, of increase (decrease) in plan assets of defined benefit plan from actual return (loss) on assets sold.",
        "label": "Realized gains"
       }
      }
     },
     "localname": "DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanActuarialGainLoss": {
     "auth_ref": [
      "r266"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of gain (loss) from change in actuarial assumptions which (increases) decreases benefit obligation of defined benefit plan. Assumptions include, but are not limited to, interest, mortality, employee turnover, salary, and temporary deviation from substantive plan.",
        "label": "us-gaap_DefinedBenefitPlanActuarialGainLoss",
        "negatedLabel": "Net actuarial (gain) loss"
       }
      }
     },
     "localname": "DefinedBenefitPlanActuarialGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses": {
     "auth_ref": [
      "r284",
      "r298",
      "r301"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details": {
       "order": 2.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of gain (loss) recognized in net periodic benefit (cost) credit of defined benefit plan.",
        "label": "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses",
        "negatedLabel": "Amortization of net loss",
        "terseLabel": "Defined Benefit Plan, Amortization of Gain (Loss)"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmortizationOfGainsLosses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average rate for present value of future retirement benefits cash flows, used to determine benefit obligation of defined benefit plan.",
        "label": "Weighted average discount rate"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average rate for present value of future retirement benefits cash flows, used to determine net periodic benefit cost of defined benefit plan.",
        "label": "Discount Rate"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets": {
     "auth_ref": [
      "r289"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average rate of return on plan assets, reflecting average rate of earnings expected on existing plan assets and expected contributions, used to determine net periodic benefit cost of defined benefit plan.",
        "label": "Expected long-term rate of return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligation": {
     "auth_ref": [
      "r263"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details": {
       "order": 0.0,
       "parentTag": "us-gaap_DefinedBenefitPlanFundedStatusOfPlan",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.",
        "label": "us-gaap_DefinedBenefitPlanBenefitObligation",
        "periodEndLabel": "Projected benefit obligation at end of period",
        "periodStartLabel": "Projected benefit obligation at beginning of period"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid": {
     "auth_ref": [
      "r267",
      "r302"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of payment to participant of defined benefit plan which decreases benefit obligation. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.",
        "label": "us-gaap_DefinedBenefitPlanBenefitObligationBenefitsPaid",
        "negatedLabel": "Benefits paid"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligationBenefitsPaid",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis": {
     "auth_ref": [
      "r275",
      "r276",
      "r290",
      "r301"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by defined benefit plan asset investment.",
        "label": "Defined Benefit Plan, Plan Assets, Category [Axis]"
       }
      }
     },
     "localname": "DefinedBenefitPlanByPlanAssetCategoriesAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanContributionsByEmployer": {
     "auth_ref": [
      "r270",
      "r275",
      "r276",
      "r300",
      "r301"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets.",
        "label": "Company contributions"
       }
      }
     },
     "localname": "DefinedBenefitPlanContributionsByEmployer",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": {
     "auth_ref": [
      "r283",
      "r297",
      "r301"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details": {
       "order": 3.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.",
        "label": "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets",
        "negatedLabel": "Expected return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFairValueOfPlanAssets": {
     "auth_ref": [
      "r268",
      "r275",
      "r276",
      "r301"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details": {
       "order": 1.0,
       "parentTag": "us-gaap_DefinedBenefitPlanFundedStatusOfPlan",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of asset segregated and restricted to provide benefit under defined benefit plan. Asset includes, but is not limited to, stock, bond, other investment, earning from investment, and contribution by employer and employee.",
        "label": "Fair values of the Pension Plan's assets",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "terseLabel": "Defined Benefit Plan, Plan Assets, Amount, Ending Balance"
       }
      }
     },
     "localname": "DefinedBenefitPlanFairValueOfPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFundedStatusOfPlan": {
     "auth_ref": [
      "r262",
      "r272"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of funded (unfunded) status of defined benefit plan, measured as difference between fair value of plan assets and benefit obligation. Includes, but is not limited to, overfunded (underfunded) status.",
        "label": "us-gaap_DefinedBenefitPlanFundedStatusOfPlan",
        "totalLabel": "Funded status: accrued pension liability included in other long-term liabilities"
       }
      }
     },
     "localname": "DefinedBenefitPlanFundedStatusOfPlan",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanInterestCost": {
     "auth_ref": [
      "r265",
      "r282",
      "r296",
      "r301"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details": {
       "order": 0.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost recognized for passage of time related to defined benefit plan.",
        "label": "Interest cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanInterestCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": {
     "auth_ref": [
      "r281",
      "r295",
      "r301"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of net periodic benefit cost (credit) for defined benefit plan.",
        "label": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
        "totalLabel": "Net periodic pension cost (benefit)"
       }
      }
     },
     "localname": "DefinedBenefitPlanNetPeriodicBenefitCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid": {
     "auth_ref": [
      "r271",
      "r302"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of payment to participant under defined benefit plan which decreases plan assets. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.",
        "label": "us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid",
        "negatedTerseLabel": "Benefits paid"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsBenefitsPaid",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale": {
     "auth_ref": [
      "r279"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, measured using unobservable input, of decrease in plan asset of defined benefit plan from sale.",
        "label": "us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale",
        "negatedLabel": "Redemptions"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsLevel3ReconciliationDecreaseForSale",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase": {
     "auth_ref": [
      "r279"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, measured using unobservable input, of increase in plan asset of defined benefit plan from purchase.",
        "label": "Purchases"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsLevel3ReconciliationIncreaseForPurchase",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage": {
     "auth_ref": [
      "r274",
      "r301"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of target investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.",
        "label": "Asset Category, Target",
        "terseLabel": "Defined Benefit Plan, Plan Assets, Target Allocation, Percentage"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsTargetAllocationPercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1": {
     "auth_ref": [
      "r285",
      "r299"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details": {
       "order": 1.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of gain (loss) recognized in net periodic benefit (cost) credit from settlement and curtailment.",
        "label": "us-gaap_DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1",
        "negatedLabel": "Loss on pension settlement"
       }
      }
     },
     "localname": "DefinedBenefitPlanRecognizedNetGainLossDueToSettlementsAndCurtailments1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanSettlementsBenefitObligation": {
     "auth_ref": [
      "r264"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of (increase) decrease to benefit obligation of defined benefit plan from irrevocable action relieving primary responsibility for benefit obligation and eliminating risk for obligation and assets used to effect settlement. Includes, but is not limited to, lump-sum cash payment to participant in exchange for right to receive specified benefits, purchase of nonparticipating annuity contract and change from remeasurement.",
        "label": "Loss on pension settlement",
        "negatedLabel": "Loss on pension settlement",
        "negatedTerseLabel": "Loss on pension settlement (4)",
        "terseLabel": "Defined Benefit Plan, Benefit Obligation, (Increase) Decrease for Settlement, Total",
        "verboseLabel": "Loss on pension settlement"
       }
      }
     },
     "localname": "DefinedBenefitPlanSettlementsBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanWeightedAverageAssetAllocations": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of actual investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.",
        "label": "Asset Category, Percentage"
       }
      }
     },
     "localname": "DefinedBenefitPlanWeightedAverageAssetAllocations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanCostRecognized": {
     "auth_ref": [
      "r303"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost for defined contribution plan.",
        "label": "us-gaap_DefinedContributionPlanCostRecognized",
        "terseLabel": "Defined Contribution Plan, Cost"
       }
      }
     },
     "localname": "DefinedContributionPlanCostRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage employer matches of the employee's percentage contribution matched.",
        "label": "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch",
        "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r108",
      "r205"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 7.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": "us-gaap_Depreciation",
        "terseLabel": "Depreciation, Total",
        "verboseLabel": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r108",
      "r159"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "us-gaap_DepreciationDepletionAndAmortization",
        "negatedLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.",
        "label": "Derivative Contract [Domain]"
       }
      }
     },
     "localname": "DerivativeContractTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeFairValueOfDerivativeNet": {
     "auth_ref": [
      "r440"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value of the assets less the liabilities of a derivative or group of derivatives.",
        "label": "Fair Value of Derivatives"
       }
      }
     },
     "localname": "DerivativeFairValueOfDerivativeNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeGainLossOnDerivativeNet": {
     "auth_ref": [
      "r425"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.",
        "label": "us-gaap_DerivativeGainLossOnDerivativeNet",
        "terseLabel": "Derivative, Gain (Loss) on Derivative, Net, Total"
       }
      }
     },
     "localname": "DerivativeGainLossOnDerivativeNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r424",
      "r426",
      "r428",
      "r432"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r436"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.",
        "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DerivativeNumberOfInstrumentsHeld": {
     "auth_ref": [
      "r418",
      "r420"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of derivative instruments of a particular group held by the entity.",
        "label": "us-gaap_DerivativeNumberOfInstrumentsHeld",
        "terseLabel": "Derivative, Number of Instruments Held, Total"
       }
      }
     },
     "localname": "DerivativeNumberOfInstrumentsHeld",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_DerivativeRemainingMaturity1": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period remaining until the derivative contract matures, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_DerivativeRemainingMaturity1",
        "terseLabel": "Derivative, Remaining Maturity"
       }
      }
     },
     "localname": "DerivativeRemainingMaturity1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_DerivativesPolicyTextBlock": {
     "auth_ref": [
      "r113",
      "r120",
      "r417",
      "r419",
      "r421",
      "r422",
      "r434"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities.",
        "label": "Derivatives, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "DerivativesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "auth_ref": [
      "r397"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property.",
        "label": "Developed Technology Rights [Member]"
       }
      }
     },
     "localname": "DevelopedTechnologyRightsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r253"
     ],
     "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]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r344"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement [Text Block]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "us-gaap_DisclosureTextBlockAbstract",
        "terseLabel": "Notes to Financial Statements"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-1-description-of-business-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts",
      "http://www.generac.com/20191231/role/statement-note-21-subsequent-events",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r82",
      "r126",
      "r132",
      "r134",
      "r135",
      "r136",
      "r139",
      "r490",
      "r505"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Net income attributable to common shareholders per common share - basic: (in dollars per share)",
        "terseLabel": "Basic (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r82",
      "r126",
      "r132",
      "r134",
      "r135",
      "r136",
      "r139",
      "r490",
      "r505"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Net income attributable to common shareholders per common share - diluted: (in dollars per share)",
        "terseLabel": "Diluted (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r140"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents": {
     "auth_ref": [
      "r444"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.",
        "label": "Effect of exchange rate changes on cash and cash equivalents"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashAndCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r118",
      "r357",
      "r358"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
        "totalLabel": "Effective tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r357",
      "r358",
      "r379"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 1.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "U.S. statutory rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate": {
     "auth_ref": [
      "r357",
      "r358",
      "r379"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 7.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates.",
        "label": "Tax Act impact (2)"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": {
     "auth_ref": [
      "r357",
      "r358",
      "r379"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 4.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent": {
     "auth_ref": [
      "r343",
      "r357"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 0.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.",
        "label": "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent",
        "terseLabel": "Share-based compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r357",
      "r358",
      "r379"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 6.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).",
        "label": "State taxes"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch": {
     "auth_ref": [
      "r357",
      "r358",
      "r379"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details": {
       "order": 3.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": -1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to research tax credit.",
        "label": "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch",
        "negatedLabel": "Research and development credits"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCreditsResearch",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "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": "Accrued wages and employee benefits"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r334"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
        "terseLabel": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r334"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
        "terseLabel": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [
      "r332"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-based Payment Arrangement, Option [Member]"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r238"
     ],
     "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]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis": {
     "auth_ref": [
      "r127",
      "r128",
      "r129"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of error correction.",
        "label": "Adjustments for Error Corrections [Axis]"
       }
      }
     },
     "localname": "ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities": {
     "auth_ref": [
      "r342"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes.",
        "label": "us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities",
        "negatedTerseLabel": "Excess tax benefits from equity awards"
       }
      }
     },
     "localname": "ExcessTaxBenefitFromShareBasedCompensationOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExtendedProductWarrantyAccrual": {
     "auth_ref": [
      "r221"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount as of the balance sheet date of the aggregate extended product warranty liability. Does not include the ending balance for the standard product warranty liability.",
        "label": "us-gaap_ExtendedProductWarrantyAccrual",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "ExtendedProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExtendedProductWarrantyAccrualCurrent": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
       "order": 1.0,
       "parentTag": "us-gaap_ExtendedProductWarrantyAccrual",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount at end of the reporting period of the aggregate extended product warranty liability that is expected to be paid within one year of the balance sheet date or normal operating cycle, if longer. Does not include the balance for the standard product warranty liability.",
        "label": "us-gaap_ExtendedProductWarrantyAccrualCurrent",
        "terseLabel": "Current portion - other accrued liabilities"
       }
      }
     },
     "localname": "ExtendedProductWarrantyAccrualCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExtendedProductWarrantyAccrualNoncurrent": {
     "auth_ref": [
      "r50"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
       "order": 0.0,
       "parentTag": "us-gaap_ExtendedProductWarrantyAccrual",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount at end of the reporting period of the aggregate extended product warranty liability that is expected to be paid after one year from the balance sheet date or normal operating cycle, if longer. Does not include the balance for the standard product warranty liability.",
        "label": "us-gaap_ExtendedProductWarrantyAccrualNoncurrent",
        "terseLabel": "Long-term portion - other long-term liabilities"
       }
      }
     },
     "localname": "ExtendedProductWarrantyAccrualNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r222"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in the extended product warranty accrual from warranties issued. Excludes standard product warranties.",
        "label": "Deferred revenue contracts issued"
       }
      }
     },
     "localname": "ExtendedProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r275",
      "r276",
      "r301",
      "r437",
      "r475"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r275",
      "r276",
      "r301",
      "r437",
      "r476"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r275",
      "r276",
      "r301",
      "r437",
      "r477"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r275",
      "r276",
      "r301",
      "r437",
      "r478"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r113",
      "r438",
      "r439"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "auth_ref": [
      "r458",
      "r463",
      "r471"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of interest expense on finance lease liability.",
        "label": "Interest on lease liabilities"
       }
      }
     },
     "localname": "FinanceLeaseInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseInterestPaymentOnLiability": {
     "auth_ref": [
      "r460",
      "r465"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of interest paid on finance lease liability.",
        "label": "Operating cash flows from finance leases"
       }
      }
     },
     "localname": "FinanceLeaseInterestPaymentOnLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r457",
      "r470"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details": {
       "order": 4.0,
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "Total finance lease liabilities",
        "terseLabel": "Present value of minimum lease payments, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "auth_ref": [
      "r457"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.",
        "label": "Finance lease liabilities - current (5)"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r457"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.",
        "label": "Finance lease liabilities - noncurrent (6)"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
        "terseLabel": "Total minimum lease payments, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due after fifth fiscal year following latest fiscal year.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive",
        "terseLabel": "After 2023, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in next fiscal year following latest fiscal year.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
        "terseLabel": "2020, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fifth fiscal year following latest fiscal year.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fourth fiscal year following latest fiscal year.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour",
        "terseLabel": "2023, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in third fiscal year following latest fiscal year.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree",
        "terseLabel": "2022, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in second fiscal year following latest fiscal year.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo",
        "terseLabel": "2021, finance leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r470"
     ],
     "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 finance lease.",
        "label": "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount",
        "negatedTerseLabel": "Interest component"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "auth_ref": [
      "r459",
      "r465"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for principal payment on finance lease.",
        "label": "Financing cash flows from finance leases"
       }
      }
     },
     "localname": "FinanceLeasePrincipalPayments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "auth_ref": [
      "r456"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under finance lease.",
        "label": "us-gaap_FinanceLeaseRightOfUseAsset",
        "totalLabel": "Finance lease ROU assets, net (4)"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "auth_ref": [
      "r458",
      "r463",
      "r471"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details": {
       "order": 0.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.",
        "label": "Amortization of ROU assets"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r468",
      "r471"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average discount rate for finance lease calculated at point in time.",
        "label": "Finance Leases"
       }
      }
     },
     "localname": "FinanceLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r467",
      "r471"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Finance Leases (Year)"
       }
      }
     },
     "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details"
     ],
     "xbrltype": "durationItemType"
    },
    "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 assets, useful life (Year)"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r198"
     ],
     "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": "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization",
        "negatedLabel": "Finite-lived intangible assets, accumulated amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r200"
     ],
     "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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r200"
     ],
     "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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Five"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r200"
     ],
     "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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Four"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r200"
     ],
     "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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Three"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r200"
     ],
     "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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Two"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r194",
      "r195",
      "r198",
      "r202",
      "r479"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r198",
      "r479"
     ],
     "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"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r194",
      "r197"
     ],
     "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]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r198"
     ],
     "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"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FixedIncomeFundsMember": {
     "auth_ref": [
      "r275"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Investment that pools funds from investors to invest in a combination of underlying investments, primarily fixed income investments.",
        "label": "Fixed Income Funds [Member]"
       }
      }
     },
     "localname": "FixedIncomeFundsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r113",
      "r443",
      "r446"
     ],
     "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]"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ForeignExchangeContractMember": {
     "auth_ref": [
      "r275",
      "r430"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Derivative instrument whose primary underlying risk is tied to foreign exchange rates.",
        "label": "Foreign Exchange Contract [Member]"
       }
      }
     },
     "localname": "ForeignExchangeContractMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "auth_ref": [
      "r108",
      "r229",
      "r230"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 2.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.",
        "label": "Loss on extinguishment of debt",
        "negatedLabel": "Loss on extinguishment of debt",
        "terseLabel": "Gain (Loss) on Extinguishment of Debt, Total"
       }
      }
     },
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r86"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "auth_ref": [
      "r150"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).",
        "label": "Geographic Concentration Risk [Member]"
       }
      }
     },
     "localname": "GeographicConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r184",
      "r185"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details": {
       "order": 3.0,
       "parentTag": "gnrc_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill",
       "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": "Balance",
        "periodStartLabel": "Balance",
        "terseLabel": "Goodwill, Ending Balance",
        "verboseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r187"
     ],
     "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": "us-gaap_GoodwillAcquiredDuringPeriod",
        "terseLabel": "Acquisitions of businesses, net"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetImpairment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total loss recognized during the period from the impairment of goodwill plus the loss recognized in the period resulting from the impairment of the carrying amount of intangible assets, other than goodwill.",
        "label": "us-gaap_GoodwillAndIntangibleAssetImpairment",
        "terseLabel": "Goodwill and Intangible Asset Impairment, Total"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetImpairment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r203"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": {
     "auth_ref": [
      "r113",
      "r190"
     ],
     "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]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r188"
     ],
     "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": "Foreign currency translation"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillGross": {
     "auth_ref": [
      "r186",
      "r189"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before 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, gross"
       }
      }
     },
     "localname": "GoodwillGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": {
     "auth_ref": [
      "r186",
      "r189"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accumulated impairment loss for an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss",
        "negatedLabel": "Accumulated impairment"
       }
      }
     },
     "localname": "GoodwillImpairedAccumulatedImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_HedgingDesignationAxis": {
     "auth_ref": [
      "r421",
      "r433"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Axis]"
       }
      }
     },
     "localname": "HedgingDesignationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_HedgingDesignationDomain": {
     "auth_ref": [
      "r421"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Domain]"
       }
      }
     },
     "localname": "HedgingDesignationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r113",
      "r204",
      "r211"
     ],
     "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]"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r80",
      "r126",
      "r480",
      "r488",
      "r506"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
        "terseLabel": "Total before tax",
        "totalLabel": "Income before provision for income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "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_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r209"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r384"
     ],
     "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]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r115",
      "r160",
      "r382"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": -1.0
      },
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "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": "Provision for income taxes",
        "terseLabel": "Income tax impact",
        "totalLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r77",
      "r113",
      "r353",
      "r354",
      "r366",
      "r367",
      "r372",
      "r383",
      "r512"
     ],
     "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]"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r352",
      "r357",
      "r358"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details": {
       "order": 1.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 increase (decrease) in the valuation allowance for deferred tax assets.",
        "label": "Change in valuation allowance",
        "terseLabel": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r112"
     ],
     "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"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.",
        "label": "us-gaap_IncreaseDecreaseInAccountsPayable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "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 amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "us-gaap_IncreaseDecreaseInAccountsReceivable",
        "negatedTerseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.",
        "label": "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities",
        "terseLabel": "Accrued wages and employee benefits"
       }
      }
     },
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "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 the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "us-gaap_IncreaseDecreaseInInventories",
        "negatedTerseLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net changes in operating assets and liabilities, net of acquisitions:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in other expenses incurred but not yet paid.",
        "label": "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities",
        "terseLabel": "Other accrued liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "us-gaap_IncreaseDecreaseInOtherOperatingAssets",
        "negatedTerseLabel": "Other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r133",
      "r138"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
       "order": 0.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.",
        "label": "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
        "terseLabel": "Dilutive effect of stock compensation awards (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IndefiniteLivedTradeNames": {
     "auth_ref": [
      "r201"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount (original costs adjusted for previously recognized amortization and impairment) as of the balance sheet date for the rights acquired through registration of a trade name to gain or protect exclusive use thereof for a projected indefinite period of benefit.",
        "label": "Indefinite-lived tradenames, gross"
       }
      }
     },
     "localname": "IndefiniteLivedTradeNames",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsGrossExcludingGoodwill": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill.",
        "label": "Total intangible assets, gross"
       }
      }
     },
     "localname": "IntangibleAssetsGrossExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r192",
      "r196"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Total intangible assets, net"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r79",
      "r158",
      "r447",
      "r450",
      "r491"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 4.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "us-gaap_InterestExpense",
        "negatedLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r101",
      "r104",
      "r112"
     ],
     "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"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestRateSwapMember": {
     "auth_ref": [
      "r429"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.",
        "label": "Interest Rate Swap [Member]"
       }
      }
     },
     "localname": "InterestRateSwapMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r28",
      "r181"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details": {
       "order": 0.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.",
        "label": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r3",
      "r55",
      "r178"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details": {
       "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": "Inventories",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r11",
      "r56",
      "r113",
      "r141",
      "r179",
      "r180"
     ],
     "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]"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r30",
      "r181"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.",
        "label": "Raw material"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryValuationReserveMember": {
     "auth_ref": [
      "r122"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Reserve to reduce inventory to lower of cost or net realizable value.",
        "label": "SEC Schedule, 12-09, Reserve, Inventory [Member]"
       }
      }
     },
     "localname": "InventoryValuationReserveMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r29",
      "r181"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.",
        "label": "Work-in-process"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentIncomeNonoperating": {
     "auth_ref": [
      "r87"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 3.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations.",
        "label": "Investment income"
       }
      }
     },
     "localname": "InvestmentIncomeNonoperating",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandAndLandImprovementsMember": {
     "auth_ref": [
      "r7"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Real estate held and assets that are an addition or improvement to real estate held.",
        "label": "Land and Land Improvements [Member]"
       }
      }
     },
     "localname": "LandAndLandImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LandImprovementsMember": {
     "auth_ref": [
      "r7"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Additions or improvements to real estate held.",
        "label": "Land Improvements [Member]"
       }
      }
     },
     "localname": "LandImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r469",
      "r471"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "us-gaap_LeaseCost",
        "totalLabel": "Total lease cost"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r469"
     ],
     "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]"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r206"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeasesOfLesseeDisclosureTextBlock": {
     "auth_ref": [
      "r454"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for lessee entity's leasing arrangements including, but not limited to, all of the following: (a.) The basis on which contingent rental payments are determined, (b.) The existence and terms of renewal or purchase options and escalation clauses, (c.) Restrictions imposed by lease agreements, such as those concerning dividends, additional debt, and further leasing.",
        "label": "Leases of Lessee Disclosure [Text Block]"
       }
      }
     },
     "localname": "LeasesOfLesseeDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r470"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease.",
        "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
        "terseLabel": "Total minimum lease payments, operating leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
        "terseLabel": "After 2023, operating leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
        "terseLabel": "2020, operating leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
        "terseLabel": "2023, operating leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
        "terseLabel": "2022, operating leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
        "terseLabel": "2021, operating leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r470"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
        "negatedTerseLabel": "Interest component"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r462"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_LesseeOperatingLeaseRenewalTerm",
        "terseLabel": "Lessee, Operating Lease, Renewal Term"
       }
      }
     },
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r45"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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": "us-gaap_Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r26",
      "r486",
      "r501"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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": "us-gaap_LiabilitiesAndStockholdersEquity",
        "totalLabel": "Total liabilities and stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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": "us-gaap_LiabilitiesCurrent",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCredit": {
     "auth_ref": [
      "r16",
      "r484",
      "r495"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details": {
       "order": 0.0,
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": 1.0
      }
     },
     "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": "ABL facility",
        "terseLabel": "Long-term Line of Credit, Total"
       }
      }
     },
     "localname": "LineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r42"
     ],
     "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": "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity",
        "terseLabel": "Line of Credit Facility, Maximum Borrowing Capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r42"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).",
        "label": "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity",
        "terseLabel": "Line of Credit Facility, Remaining Borrowing Capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r16",
      "r228",
      "r484",
      "r498"
     ],
     "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": "us-gaap_LongTermDebt",
        "terseLabel": "Long-term Debt, Total"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligations": {
     "auth_ref": [
      "r16"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent.",
        "label": "Long-term borrowings and finance lease obligations",
        "terseLabel": "Total"
       }
      }
     },
     "localname": "LongTermDebtAndCapitalLeaseObligations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of long-term debt and lease obligation, classified as current.",
        "label": "Current portion of long-term borrowings and finance lease obligations"
       }
      }
     },
     "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r44"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Less: current portion of debt"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "auth_ref": [
      "r121",
      "r225"
     ],
     "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": "2020"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "auth_ref": [
      "r121",
      "r225"
     ],
     "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": "2023"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "auth_ref": [
      "r121",
      "r225"
     ],
     "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": "2022"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "auth_ref": [
      "r121",
      "r225"
     ],
     "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": "2021"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r49"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Total"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r49"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r49",
      "r226"
     ],
     "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]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.",
        "label": "Machinery and Equipment [Member]"
       }
      }
     },
     "localname": "MachineryAndEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MinorityInterest": {
     "auth_ref": [
      "r54",
      "r485",
      "r500"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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 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": "Noncontrolling interests"
       }
      }
     },
     "localname": "MinorityInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestChangeInRedemptionValue": {
     "auth_ref": [
      "r235",
      "r236",
      "r237",
      "r244"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
       "order": 0.0,
       "parentTag": "gnrc_NetIncomeLossAvailableToCommonStockholders",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Change in noncontrolling interest during the period as a result of a change in the redemption value of redeemable noncontrolling interest.",
        "label": "Redemption value adjustment",
        "terseLabel": "Redeemable noncontrolling interest redemption value adjustment"
       }
      }
     },
     "localname": "MinorityInterestChangeInRedemptionValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders": {
     "auth_ref": [
      "r243"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders.",
        "label": "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders",
        "negatedLabel": "Cash dividends paid to noncontrolling interest of subsidiary"
       }
      }
     },
     "localname": "MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.",
        "label": "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners",
        "terseLabel": "Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByNoncontrollingOwners",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_MutualFundMember": {
     "auth_ref": [
      "r275"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Regulated investment instrument that pools funds from multiple investors to invest principally in a portfolio of securities and money market instruments to match the investment objective.",
        "label": "Mutual Fund [Member]"
       }
      }
     },
     "localname": "MutualFundMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetAssetsGeographicAreaMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of the total assets less the total liabilities of a designated geographic area ( such as a state, country, continent, or market) when it serves as a benchmark in a concentration of risk calculation.",
        "label": "Net Assets, Geographic Area [Member]"
       }
      }
     },
     "localname": "NetAssetsGeographicAreaMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r103"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "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": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
        "totalLabel": "Net cash used in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r103"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "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": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r103",
      "r106",
      "r109"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "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": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r71",
      "r74",
      "r81",
      "r109",
      "r138",
      "r489",
      "r504"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
       "order": 1.0,
       "parentTag": "gnrc_NetIncomeLossAvailableToCommonStockholders",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "As reported",
        "terseLabel": "Net income attributable to Generac Holdings Inc.",
        "totalLabel": "Net income attributable to Generac Holdings Inc."
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r71",
      "r74",
      "r407",
      "r413"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.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 attributable to noncontrolling interests"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest": {
     "auth_ref": [
      "r84"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Portion of net income (loss) attributable to nonredeemable noncontrolling interest.",
        "label": "us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToNonredeemableNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest": {
     "auth_ref": [
      "r234",
      "r407",
      "r408"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after income tax of income (loss) including the portion attributable to nonredeemable noncontrolling interest. Excludes the portion attributable to redeemable noncontrolling interest recognized as temporary equity.",
        "label": "Net income"
       }
      }
     },
     "localname": "NetIncomeLossIncludingPortionAttributableToNonredeemableNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "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]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r394"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Noncompete Agreements [Member]"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation": {
     "auth_ref": [
      "r244",
      "r409"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of the reduction or elimination during the period of a noncontrolling interest resulting from the parent's loss of control and deconsolidation of the entity in which one or more outside parties had a noncontrolling interest.",
        "label": "us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation",
        "negatedLabel": "Change in noncontrolling interest shares"
       }
      }
     },
     "localname": "NoncontrollingInterestDecreaseFromDeconsolidation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance": {
     "auth_ref": [
      "r244",
      "r404",
      "r409"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in noncontrolling interest from subsidiary issuance of equity interests to noncontrolling interest holders.",
        "label": "Change in noncontrolling interest share"
       }
      }
     },
     "localname": "NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NoncontrollingInterestMember": {
     "auth_ref": [
      "r399"
     ],
     "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]"
       }
      }
     },
     "localname": "NoncontrollingInterestMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NondesignatedMember": {
     "auth_ref": [
      "r421"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).",
        "label": "Not Designated as Hedging Instrument [Member]"
       }
      }
     },
     "localname": "NondesignatedMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r87"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).",
        "label": "us-gaap_NonoperatingIncomeExpense",
        "totalLabel": "Total other expense, net"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Other (expense) income:"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.",
        "label": "us-gaap_NumberOfReportableSegments",
        "terseLabel": "Number of Reportable Segments"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OfficeEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tangible personal property used in an office setting. Examples include, but are not limited to, computers, copiers and fax machine.",
        "label": "Office Equipment [Member]"
       }
      }
     },
     "localname": "OfficeEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.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": "us-gaap_OperatingExpenses",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.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",
        "totalLabel": "Income from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r464",
      "r471"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r457"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Total operating lease liabilities",
        "terseLabel": "Operating Lease, Liability, Total"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r457"
     ],
     "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 liabilities - current (2)"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r457"
     ],
     "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 liabilities - noncurrent (3)"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r461",
      "r465"
     ],
     "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 cash flows from operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r456"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating lease ROU assets (1)",
        "terseLabel": "Operating Lease, Right-of-Use Asset"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r468",
      "r471"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Leases"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r467",
      "r471"
     ],
     "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 Leases (Year)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLeasesRentExpenseNet": {
     "auth_ref": [
      "r452"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.",
        "label": "us-gaap_OperatingLeasesRentExpenseNet",
        "terseLabel": "Operating Leases, Rent Expense, Net, Total"
       }
      }
     },
     "localname": "OperatingLeasesRentExpenseNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r8",
      "r9",
      "r10",
      "r46"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other accrued liabilities"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherBorrowings": {
     "auth_ref": [
      "r487"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details": {
       "order": 3.0,
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The carrying amount as of the balance sheet date for the aggregate of other miscellaneous borrowings owed by the reporting entity.",
        "label": "us-gaap_OtherBorrowings",
        "verboseLabel": "Other"
       }
      }
     },
     "localname": "OtherBorrowings",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r401",
      "r402",
      "r410"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "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, attributable to parent entity.",
        "label": "Foreign currency translation adjustment"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax": {
     "auth_ref": [
      "r68"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before tax and reclassification adjustments of other comprehensive income (loss).",
        "label": "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax",
        "terseLabel": "Other Comprehensive Income (Loss), before Reclassifications, before Tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax": {
     "auth_ref": [
      "r68",
      "r78"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax, before reclassification adjustments of other comprehensive income (loss).",
        "label": "Other comprehensive income (loss) before reclassifications"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax": {
     "auth_ref": [
      "r66",
      "r381"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss) before reclassification adjustment from accumulated other comprehensive income (loss).",
        "label": "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax",
        "terseLabel": "Other Comprehensive Income (Loss) before Reclassifications, Tax, Total"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r59",
      "r445"
     ],
     "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": "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
        "terseLabel": "Foreign currency translation adjustment"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r72",
      "r75",
      "r78",
      "r238"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).",
        "label": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
        "terseLabel": "Net current-period other comprehensive income (loss)",
        "totalLabel": "Other comprehensive income (loss)"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Other comprehensive income (loss):"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax": {
     "auth_ref": [
      "r63",
      "r65"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.",
        "label": "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax",
        "negatedLabel": "Pension liability adjustment"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax": {
     "auth_ref": [
      "r63",
      "r66",
      "r401"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after reclassification adjustment, of tax (expense) benefit for (increase) decrease in accumulated other comprehensive income of defined benefit plan.",
        "label": "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax",
        "negatedLabel": "Pension liability adjustment, tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax": {
     "auth_ref": [
      "r61",
      "r65",
      "r435"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before tax of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).",
        "label": "us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax",
        "terseLabel": "Other Comprehensive Income (Loss), Unrealized Gain (Loss) on Derivatives Arising During Period, before Tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax": {
     "auth_ref": [
      "r61",
      "r65",
      "r435"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).",
        "label": "Net unrealized gain (loss) on derivatives"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax": {
     "auth_ref": [
      "r61",
      "r66"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of tax expense (benefit), before reclassification adjustments, related to increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).",
        "label": "Unrealized gain (loss) on interest rate swaps, tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherIntangibleAssetsNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after accumulated amortization of finite-lived and indefinite-lived intangible assets classified as other.",
        "label": "Other intangible assets, net"
       }
      }
     },
     "localname": "OtherIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment": {
     "auth_ref": [
      "r31"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Gross amount of inventory owned by the entity but in the hands of a customer, typically a reseller.",
        "label": "us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment",
        "terseLabel": "Other Inventory, Materials, Supplies and Merchandise under Consignment, Gross"
       }
      }
     },
     "localname": "OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "auth_ref": [
      "r109"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.",
        "label": "us-gaap_OtherNoncashIncomeExpense",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "OtherNoncashIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r88"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 0.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "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]"
       }
      }
     },
     "localname": "ParentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PatentsMember": {
     "auth_ref": [
      "r397"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law.",
        "label": "Patents [Member]"
       }
      }
     },
     "localname": "PatentsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": {
     "auth_ref": [
      "r100"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date.",
        "label": "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities",
        "negatedLabel": "Payment of contingent acquisition consideration"
       }
      }
     },
     "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow to reacquire common stock during the period.",
        "label": "us-gaap_PaymentsForRepurchaseOfCommonStock",
        "negatedLabel": "Stock repurchases",
        "terseLabel": "Payments for Repurchase of Common Stock"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "auth_ref": [
      "r99"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.",
        "label": "us-gaap_PaymentsOfDebtIssuanceCosts",
        "negatedLabel": "Payment of debt issuance costs"
       }
      }
     },
     "localname": "PaymentsOfDebtIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.",
        "label": "us-gaap_PaymentsOfDividendsCommonStock",
        "negatedLabel": "Cash dividends paid to noncontrolling interest of subsidiary"
       }
      }
     },
     "localname": "PaymentsOfDividendsCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
        "negatedLabel": "Taxes paid related to equity awards",
        "terseLabel": "Payment, Tax Withholding, Share-based Payment Arrangement"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.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": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired",
        "negatedLabel": "Acquisition of business, net of cash acquired",
        "terseLabel": "Payments to Acquire Businesses, Net of Cash Acquired, Total"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "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": "Capital expenditures",
        "negatedLabel": "Expenditures for property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r304"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for pension and other postretirement benefits.",
        "label": "Pension and Other Postretirement Benefits Disclosure [Text Block]"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PensionContributions": {
     "auth_ref": [
      "r105"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for pension benefit. Includes, but is not limited to, employer contribution to fund plan asset and payment to retiree. Excludes other postretirement benefit.",
        "label": "us-gaap_PensionContributions",
        "terseLabel": "Payment for Pension Benefits"
       }
      }
     },
     "localname": "PensionContributions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionPlansDefinedBenefitMember": {
     "auth_ref": [
      "r260",
      "r291",
      "r292",
      "r303"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Plan designed to provide participant with pension benefits. Includes, but is not limited to, defined benefit and defined contribution plans. Excludes other postretirement benefits.",
        "label": "Pension Plan [Member]"
       }
      }
     },
     "localname": "PensionPlansDefinedBenefitMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PerformanceSharesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based payment arrangement awarded for meeting performance target.",
        "label": "Performance Shares [Member]"
       }
      }
     },
     "localname": "PerformanceSharesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanAssetCategoriesDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Defined benefit plan asset investment.",
        "label": "Defined Benefit Plan, Plan Assets, Category [Domain]"
       }
      }
     },
     "localname": "PlanAssetCategoriesDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r308",
      "r336"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PolicyTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "us-gaap_PolicyTextBlockAbstract",
        "terseLabel": "Accounting Policies"
       }
      }
     },
     "localname": "PolicyTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r5",
      "r34",
      "r35"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid expenses and other assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables": {
     "auth_ref": [
      "r90"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from collection on beneficial interest in securitization of receivables.",
        "label": "Proceeds from beneficial interest in securitization transactions"
       }
      }
     },
     "localname": "ProceedsFromCollectionOfRetainedInterestInSecuritizedReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.",
        "label": "Proceeds from long-term borrowings"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLinesOfCredit": {
     "auth_ref": [
      "r95",
      "r117"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.",
        "label": "us-gaap_ProceedsFromLinesOfCredit",
        "terseLabel": "Proceeds from Lines of Credit, Total"
       }
      }
     },
     "localname": "ProceedsFromLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "auth_ref": [
      "r91"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 3.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 and equipment"
       }
      }
     },
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromShortTermDebt": {
     "auth_ref": [
      "r95"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow from a borrowing having initial term of repayment within one year or the normal operating cycle, if longer.",
        "label": "Proceeds from short-term borrowings"
       }
      }
     },
     "localname": "ProceedsFromShortTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r94",
      "r337"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.",
        "label": "Proceeds from the exercise of stock options",
        "terseLabel": "Proceeds from Stock Options Exercised"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyDisclosureTextBlock": {
     "auth_ref": [
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.",
        "label": "Product Warranty Disclosure [Text Block]"
       }
      }
     },
     "localname": "ProductWarrantyDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r71",
      "r74",
      "r102",
      "r161",
      "r164",
      "r401",
      "r406",
      "r408",
      "r413",
      "r414"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "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": "us-gaap_ProfitLoss",
        "totalLabel": "Net income",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r39",
      "r208"
     ],
     "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]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r38",
      "r206"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details": {
       "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": "us-gaap_PropertyPlantAndEquipmentGross",
        "terseLabel": "Property and equipment, gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r13",
      "r14",
      "r208",
      "r502"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details": {
       "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 and equipment, net",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r37",
      "r113",
      "r208"
     ],
     "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]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r13",
      "r208"
     ],
     "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]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r13",
      "r206"
     ],
     "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]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property and equipment, estimated useful lives (Year)"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "auth_ref": [
      "r143"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.",
        "label": "Quarterly Financial Information [Text Block]"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RealEstateMember": {
     "auth_ref": [
      "r256"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Property consisting of land, land improvement and buildings.",
        "label": "Real Estate [Member]"
       }
      }
     },
     "localname": "RealEstateMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r113",
      "r171",
      "r174",
      "r175",
      "r176"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Receivable [Policy Text Block]"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax": {
     "auth_ref": [
      "r68",
      "r70"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before tax of reclassification adjustments of other comprehensive income (loss).",
        "label": "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax",
        "negatedTerseLabel": "Amortization of net loss",
        "terseLabel": "Reclassification from Accumulated Other Comprehensive Income, Current Period, before Tax"
       }
      }
     },
     "localname": "ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax": {
     "auth_ref": [
      "r68",
      "r70",
      "r78"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax of reclassification adjustments of other comprehensive income (loss).",
        "label": "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax",
        "negatedTerseLabel": "Amounts reclassified from AOCL",
        "terseLabel": "Amounts reclassified from AOCL"
       }
      }
     },
     "localname": "ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReclassificationFromAociCurrentPeriodTax": {
     "auth_ref": [
      "r66",
      "r69",
      "r381"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of tax expense (benefit) of reclassification adjustment from accumulated other comprehensive income (loss).",
        "label": "us-gaap_ReclassificationFromAociCurrentPeriodTax",
        "terseLabel": "Reclassification from AOCI, Current Period, Tax, Total"
       }
      }
     },
     "localname": "ReclassificationFromAociCurrentPeriodTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by item reclassified out of accumulated other comprehensive income (loss).",
        "label": "Reclassification out of Accumulated Other Comprehensive Income [Axis]"
       }
      }
     },
     "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Item reclassified out of accumulated other comprehensive income (loss).",
        "label": "Reclassification out of Accumulated Other Comprehensive Income [Domain]"
       }
      }
     },
     "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identifies item reclassified out of accumulated other comprehensive income (loss).",
        "label": "Reclassification out of Accumulated Other Comprehensive Income [Member]"
       }
      }
     },
     "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of information about items reclassified out of accumulated other comprehensive income (loss).",
        "label": "Reclassification out of Accumulated Other Comprehensive Income [Table Text Block]"
       }
      }
     },
     "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount": {
     "auth_ref": [
      "r232",
      "r233",
      "r235",
      "r236"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "As of the reporting date, the aggregate carrying amount of all noncontrolling interests which are redeemable by the (parent) entity (1) at a fixed or determinable price on a fixed or determinable date, (2) at the option of the holder of the noncontrolling interest, or (3) upon occurrence of an event that is not solely within the control of the (parent) entity. This item includes noncontrolling interest holder's ownership (or holders' ownership) regardless of the type of equity interest (common, preferred, other) including all potential organizational (legal) forms of the investee entity.",
        "label": "Redeemable noncontrolling interest"
       }
      }
     },
     "localname": "RedeemableNoncontrollingInterestEquityCarryingAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RedeemableNoncontrollingInterestEquityFairValue": {
     "auth_ref": [
      "r232",
      "r233",
      "r235",
      "r236"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate fair value as of the reporting date of all noncontrolling interests which are redeemable by the (parent) entity (1) at a fixed or determinable price on a fixed or determinable date, (2) at the option of the holder of the noncontrolling interest, or (3) upon occurrence of an event that is not solely within the control of the (parent) entity. This item includes noncontrolling interest holder's ownership (or holders' ownership) regardless of the type of equity interest (common, preferred, other) including all potential organizational (legal) forms of the investee entity.",
        "label": "us-gaap_RedeemableNoncontrollingInterestEquityFairValue",
        "terseLabel": "Redeemable Noncontrolling Interest, Equity, Fair Value, Total"
       }
      }
     },
     "localname": "RedeemableNoncontrollingInterestEquityFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RedeemableNoncontrollingInterestTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of redeemable noncontrolling interest (as defined) included in the statement of financial position as either a liability or temporary equity. As of the date of the statement of financial position, such redeemable noncontrolling interest is currently redeemable, as defined, for cash or other assets of the entity at (1) at a fixed or determinable price on a fixed or determinable date, (2) at the option of the holder of the noncontrolling interest, or (3) upon occurrence of an event that is not solely within the control of the entity.",
        "label": "Redeemable Noncontrolling Interest [Table Text Block]"
       }
      }
     },
     "localname": "RedeemableNoncontrollingInterestTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfLinesOfCredit": {
     "auth_ref": [
      "r98",
      "r117"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.",
        "label": "us-gaap_RepaymentsOfLinesOfCredit",
        "terseLabel": "Repayments of Lines of Credit"
       }
      }
     },
     "localname": "RepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r98"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.",
        "label": "us-gaap_RepaymentsOfLongTermDebt",
        "terseLabel": "Repayments of Long-term Debt, Total"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities": {
     "auth_ref": [
      "r97"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for debt, mandatory redeemable security, and principal payment for finance lease obligation.",
        "label": "us-gaap_RepaymentsOfLongTermDebtAndCapitalSecurities",
        "negatedLabel": "Repayments of long-term borrowings and finance lease obligations"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebtAndCapitalSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfShortTermDebt": {
     "auth_ref": [
      "r98"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow for a borrowing having initial term of repayment within one year or the normal operating cycle, if longer.",
        "label": "us-gaap_RepaymentsOfShortTermDebt",
        "negatedLabel": "Repayments of short-term borrowings"
       }
      }
     },
     "localname": "RepaymentsOfShortTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r347",
      "r514"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and development",
        "terseLabel": "Research and Development Expense, Total"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r113",
      "r347"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.",
        "label": "Research and Development Expense, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r137"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met.",
        "label": "Restricted Stock [Member]"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r23",
      "r243",
      "r499"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 2.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"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "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]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTypeAxis": {
     "auth_ref": [
      "r260",
      "r261",
      "r291",
      "r292",
      "r303"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Axis]"
       }
      }
     },
     "localname": "RetirementPlanTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTypeDomain": {
     "auth_ref": [
      "r260",
      "r261",
      "r291",
      "r292",
      "r303"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Domain]"
       }
      }
     },
     "localname": "RetirementPlanTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r252",
      "r253"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "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": "Net sales"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r114",
      "r258"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue from Contract with Customer [Policy Text Block]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "auth_ref": [
      "r250"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.",
        "label": "Revenue performance obligation"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r251"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r251"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in CCYY-MM-DD format.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": {
     "auth_ref": [
      "r251"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability": {
     "auth_ref": [
      "r466",
      "r471"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for finance lease liability.",
        "label": "Finance leases"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r466",
      "r471"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Operating leases"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r151"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r68"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss).",
        "label": "Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAllocationOfPlanAssetsTableTextBlock": {
     "auth_ref": [
      "r273"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the major categories of plan assets of pension plans and/or other employee benefit plans.  This information may include, but is not limited to, the target allocation of plan assets, the fair value of each major category of plan assets, and the level within the fair value hierarchy in which the fair value measurements fall.",
        "label": "Schedule of Allocation of Plan Assets [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfAllocationOfPlanAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAssumptionsUsedTableTextBlock": {
     "auth_ref": [
      "r287"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of assumption used to determine benefit obligation and net periodic benefit cost of defined benefit plan. Includes, but is not limited to, discount rate, rate of compensation increase, expected long-term rate of return on plan assets and interest crediting rate.",
        "label": "Defined Benefit Plan, Assumptions [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfAssumptionsUsedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r377"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "auth_ref": [
      "r49",
      "r116",
      "r239",
      "r240",
      "r241",
      "r242",
      "r448",
      "r449",
      "r451",
      "r492"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of long-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 entity, if longer.",
        "label": "Schedule of Long-term Debt Instruments [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r371"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock": {
     "auth_ref": [
      "r291",
      "r292",
      "r293",
      "r294",
      "r301"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement plans.",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r138"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock": {
     "auth_ref": [
      "r277"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the effect of fair value measurements using significant unobservable inputs (Level 3) on changes in plan assets of pension plans and/or other employee benefit plans for the period.",
        "label": "Schedule of Effect of Significant Unobservable Inputs, Changes in Plan Assets [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfEffectOfSignificantUnobservableInputsChangesInPlanAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r357"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock": {
     "auth_ref": [
      "r127",
      "r128",
      "r129"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made.",
        "label": "Schedule of Error Corrections and Prior Period Adjustments [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r190",
      "r191"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r11",
      "r31",
      "r32",
      "r33"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "auth_ref": [
      "r225"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": {
     "auth_ref": [
      "r281"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of net benefit costs for pension plans and/or other employee benefit plans including service cost, interest cost, expected return on plan assets, gain (loss), prior service cost or credit, transition asset or obligation, and gain (loss) recognized due to settlements or curtailments.",
        "label": "Schedule of Net Benefit Costs [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfNetBenefitCostsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r223"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "auth_ref": [
      "r142"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.",
        "label": "Quarterly Financial Information [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfQuarterlyFinancialInformationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r392"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.",
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r157",
      "r161",
      "r162",
      "r163",
      "r190"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "auth_ref": [
      "r314"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.",
        "label": "Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r314",
      "r324",
      "r326"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "Share-based Payment Arrangement, Option, Activity [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r328"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.",
        "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShortTermDebtTextBlock": {
     "auth_ref": [
      "r43"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of short-term debt arrangements (having initial terms of repayment within one year or the normal operating cycle, if longer) including: (1) description of the short-term debt arrangement; (2) identification of the lender or type of lender; (3) repayment terms; (4) weighted average interest rate; (5) carrying amount of funds borrowed under the specified short-term debt arrangement as of the balance sheet date; (6) description of the refinancing of a short-term obligation when that obligation is excluded from current liabilities in the balance sheet; and (7) amount of a short-term obligation that has been excluded from current liabilities in the balance sheet because of a refinancing of the obligation.",
        "label": "Schedule of Short-term Debt [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShortTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "auth_ref": [
      "r365",
      "r378"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits.",
        "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r167"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "Segment Reporting Disclosure [Text Block]"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-": {
       "order": 3.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 service"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "us-gaap_ShareBasedCompensation",
        "negatedTerseLabel": "Non-cash share-based compensation expense (2)",
        "terseLabel": "Share-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r309"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r319"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
        "negatedLabel": "Forfeited (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r323"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.",
        "label": "Forfeited (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r321"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r321"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r320"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
        "periodEndLabel": "Non-vested (in shares)",
        "periodStartLabel": "Non-vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r320"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
        "periodEndLabel": "Non-vested (in dollars per share)",
        "periodStartLabel": "Non-vested (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r322"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
        "negatedLabel": "Vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r322"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.",
        "label": "Vested (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r330"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.",
        "label": "Expected stock price volatility"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r331"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Risk free interest rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r311"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r317"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.",
        "label": "Exercisable, number of options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r317"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Exercisable, weighted average exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r319"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
        "negatedLabel": "Forfeited, number of options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Granted, number of options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r325"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Weighted average grant date fair value (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r336"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.",
        "label": "Outstanding, aggregate intrinsic value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r316",
      "r336"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
        "periodEndLabel": "Outstanding, number of options (in shares)",
        "periodStartLabel": "Outstanding, number of options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r315"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
        "periodEndLabel": "Outstanding, weighted average exercise price (in dollars per share)",
        "periodStartLabel": "Outstanding, weighted average exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r306",
      "r312"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Exercised, weighted average exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.",
        "label": "Forfeited, weighted average exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Granted, weighted average exercise price (in dollars per share)",
        "terseLabel": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r113",
      "r308",
      "r313"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Share-based Payment Arrangement [Policy Text Block]"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r310"
     ],
     "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": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r329",
      "r338"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Expected life of options (Year)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r336"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.",
        "label": "Exercisable, aggregate intrinsic value"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r336"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Exercisable, weighted average remaining contractual term (Year)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r327"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Outstanding, weighted average remaining contractual term (Year)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "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": "us-gaap_SharesOutstanding",
        "periodEndLabel": "Balance (in shares)",
        "periodStartLabel": "Balance (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation",
        "terseLabel": "Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermBorrowings": {
     "auth_ref": [
      "r15",
      "r482",
      "r497"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer.",
        "label": "Short-term borrowings",
        "terseLabel": "Short-term Debt, Total"
       }
      }
     },
     "localname": "ShortTermBorrowings",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShortTermDebtTypeAxis": {
     "auth_ref": [
      "r43"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of short-term debt arrangement.",
        "label": "Short-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "ShortTermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTypeDomain": {
     "auth_ref": [
      "r41"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing.",
        "label": "Short-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "ShortTermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r124"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StandardProductWarrantyAccrual": {
     "auth_ref": [
      "r221"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "us-gaap_StandardProductWarrantyAccrual",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition": {
     "auth_ref": [
      "r220"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in the standard product warranty accrual from a business acquisition. Excludes extended product warranties.",
        "label": "Product warranty reserve assumed in acquisition"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
       "order": 1.0,
       "parentTag": "us-gaap_StandardProductWarrantyAccrual",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.",
        "label": "Current portion - other accrued liabilities"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details": {
       "order": 0.0,
       "parentTag": "us-gaap_StandardProductWarrantyAccrual",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid after one year or beyond the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.",
        "label": "Long-term portion - other long-term liabilities"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualPayments": {
     "auth_ref": [
      "r217"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.",
        "label": "us-gaap_StandardProductWarrantyAccrualPayments",
        "negatedLabel": "Payments"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualPayments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease": {
     "auth_ref": [
      "r219"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties.",
        "label": "Changes in estimates for pre-existing warranties"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualPreexistingIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r218"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties.",
        "label": "Provision for warranty issued"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r0",
      "r161",
      "r190",
      "r210",
      "r212",
      "r213",
      "r507"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r53",
      "r238"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals",
      "http://www.generac.com/20191231/role/statement-note-1-description-of-business-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables",
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables",
      "http://www.generac.com/20191231/role/statement-note-21-subsequent-events",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables",
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "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_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]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity-parentheticals",
      "http://www.generac.com/20191231/role/statement-note-1-description-of-business-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual",
      "http://www.generac.com/20191231/role/statement-note-10-leases-leases-cost-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-maturities-of-lease-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-balance-sheet-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-supplement-cash-flow-information-related-to-leases-details",
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables",
      "http://www.generac.com/20191231/role/statement-note-10-leases-weighted-average-remaining-lease-term-and-discount-rate-information-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-1-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-2-details-textual",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-deferred-product-obligations-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-2-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-recognition-of-deferred-revenue-related-to-extended-warranties-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-reconciliation-of-product-warranty-liability-details",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-longterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-maturities-of-longterm-borrowings-outstanding-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-shortterm-borrowings-details",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-details-textual",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-components-of-deferred-tax-assets-and-liabilities-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-provision-for-income-taxes-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-reconciliation-of-statutory-and-effective-tax-rates-details",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-accumulated-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-actuarial-assumptions-used-in-benefit-obligation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-components-of-net-periodic-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-fair-value-of-pension-plans-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-reconciliation-of-level-3-assets-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-asset-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-weightedaverage-assumptions-used-to-determine-net-periodic-pension-benefit-cost-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-details-textual",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-restricted-share-awards-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-weightedaverage-assumptions-used-in-the-blackscholesmerton-option-pricing-model-details",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies",
      "http://www.generac.com/20191231/role/statement-note-18-commitments-and-contingencies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-unaudited-quarterly-financial-information-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-details-textual",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables",
      "http://www.generac.com/20191231/role/statement-note-21-subsequent-events",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-details-textual",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-preliminary-price-allocation-details",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-unaudited-pro-forma-information-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-details-textual",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-details-textual",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-fair-value-of-derivatives-details",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-details-textual",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-reclassifications-from-aocl-details",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-details-textual",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-net-sales-by-products-and-services-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-schedule-of-error-corrections-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-segment-information-details",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-details-textual",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-inventories-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-carrying-amount-of-goodwill-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-details-textual",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables",
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r19",
      "r20",
      "r238",
      "r243",
      "r318"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised",
        "negatedLabel": "Exercised, number of options (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-summary-of-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchaseProgramAuthorizedAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of stock repurchase plan authorized.",
        "label": "us-gaap_StockRepurchaseProgramAuthorizedAmount1",
        "terseLabel": "Stock Repurchase Program, Authorized Amount"
       }
      }
     },
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramPeriodInForce1": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period which shares may be purchased under a stock repurchase plan authorized by an entity's Board of Directors, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_StockRepurchaseProgramPeriodInForce1",
        "terseLabel": "Stock Repurchase Program, Period in Force"
       }
      }
     },
     "localname": "StockRepurchaseProgramPeriodInForce1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r20",
      "r24",
      "r25",
      "r173"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 0.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": "us-gaap_StockholdersEquity",
        "totalLabel": "Stockholders' equity attributable to Generac Holdings, Inc."
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Stockholders\u2019 equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r399",
      "r400",
      "r412"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "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": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets",
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-disclosure-of-changes-in-accumulated-other-comprehensive-loss-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r474"
     ],
     "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]"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-21-subsequent-events"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": {
     "auth_ref": [
      "r58"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.",
        "label": "Supplemental Balance Sheet Disclosures [Text Block]"
       }
      }
     },
     "localname": "SupplementalBalanceSheetDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "us-gaap_TableTextBlock",
        "terseLabel": "Notes Tables"
       }
      }
     },
     "localname": "TableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-tables",
      "http://www.generac.com/20191231/role/statement-note-11-product-warranty-obligations-tables",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-tables",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-tables",
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-tables",
      "http://www.generac.com/20191231/role/statement-note-16-benefit-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-17-share-plans-tables",
      "http://www.generac.com/20191231/role/statement-note-19-quarterly-financial-information-unaudited-tables",
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-tables",
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-tables",
      "http://www.generac.com/20191231/role/statement-note-3-acquisitions-tables",
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-tables",
      "http://www.generac.com/20191231/role/statement-note-5-derivative-instruments-and-hedging-activities-tables",
      "http://www.generac.com/20191231/role/statement-note-6-accumulated-other-comprehensive-loss-tables",
      "http://www.generac.com/20191231/role/statement-note-7-segment-reporting-tables",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-tables",
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit": {
     "auth_ref": [
      "r377"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income tax benefit for remeasurement of deferred tax liability from change in tax rate pursuant to Tax Cuts and Jobs Act.",
        "label": "us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit",
        "terseLabel": "Tax Cuts and Jobs Act, Change in Tax Rate, Deferred Tax Liability, Income Tax Benefit"
       }
      }
     },
     "localname": "TaxCutsAndJobsActOf2017ChangeInTaxRateDeferredTaxLiabilityIncomeTaxBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests": {
     "auth_ref": [
      "r51"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount, attributable to parent and noncontrolling interests, of an entity's issued and outstanding stock which is not included within permanent equity. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable. Includes any type of security that is redeemable at a fixed or determinable price or on a fixed or determinable date or dates, is redeemable at the option of the holder, or has conditions for redemption which are not solely within the control of the issuer. Includes stock with a put option held by an ESOP and stock redeemable by a holder only in the event of a change in control of the issuer.",
        "label": "us-gaap_TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adjustments to temporary equity resulting from foreign currency translation adjustments.",
        "label": "us-gaap_TemporaryEquityForeignCurrencyTranslationAdjustments",
        "verboseLabel": "Foreign currency translation"
       }
      }
     },
     "localname": "TemporaryEquityForeignCurrencyTranslationAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TemporaryEquityNetIncome": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of net income or loss attributable to temporary equity interest.",
        "label": "us-gaap_TemporaryEquityNetIncome",
        "terseLabel": "Net income"
       }
      }
     },
     "localname": "TemporaryEquityNetIncome",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-4-redeemable-noncontrolling-interest-redeemable-noncontrolling-interest-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r393"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade Names [Member]"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-9-goodwill-and-intangible-assets-summary-of-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockAcquiredAverageCostPerShare": {
     "auth_ref": [
      "r245"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total cost of shares repurchased divided by the total number of shares repurchased.",
        "label": "us-gaap_TreasuryStockAcquiredAverageCostPerShare",
        "terseLabel": "Treasury Stock Acquired, Average Cost Per Share"
       }
      }
     },
     "localname": "TreasuryStockAcquiredAverageCostPerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r52",
      "r245"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Treasury Stock [Member]"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program",
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r52",
      "r245"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.",
        "label": "Treasury stock, shares (in shares)"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "auth_ref": [
      "r20",
      "r238",
      "r243"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury.",
        "label": "us-gaap_TreasuryStockSharesAcquired",
        "negatedLabel": "Net share settlement of restricted stock awards (in shares)"
       }
      }
     },
     "localname": "TreasuryStockSharesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockTextBlock": {
     "auth_ref": [
      "r247"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock.",
        "label": "Treasury Stock [Text Block]"
       }
      }
     },
     "localname": "TreasuryStockTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-13-stock-repurchase-program"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r52",
      "r245",
      "r246"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.",
        "label": "us-gaap_TreasuryStockValue",
        "negatedLabel": "Treasury stock, at cost, 9,103,013 and 9,047,060 shares at December 31, 2019 and 2018, respectively"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-balance-sheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "auth_ref": [
      "r238",
      "r243",
      "r245"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.",
        "label": "us-gaap_TreasuryStockValueAcquiredCostMethod",
        "negatedLabel": "Net share settlement of restricted stock awards"
       }
      }
     },
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-stockholders-equity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adoption and early adoption of sources of change to generally accepted accounting principles (GAAP) in the United States. The FASB released the FASB Accounting Standards Codification as the authoritative source of literature effective for interim and annual periods ending after September 15, 2009. As part of the Codification process, the FASB issues Accounting Standards Updates to amend the Codification but otherwise the Accounting Standards Updates are not authoritative in their own right. All previous accounting standards (such as FASB Statements of Financial Accounting Standards, FASB Interpretations, FASB Staff Positions, Emerging Issues Task Force Consensuses, other pronouncements of the FASB or other designated bodies, or other forms of GAAP are considered accounting pronouncements) were superseded upon the adoption of the Codification. For an interim period, references to the superseded standards are included to help users transition from the previous accounting hierarchy and will be removed from future versions of this taxonomy.",
        "label": "Type of Adoption [Domain]"
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-10-leases-",
      "http://www.generac.com/20191231/role/statement-note-10-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "auth_ref": [
      "r351",
      "r360"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of unrecognized tax benefits.",
        "label": "us-gaap_UnrecognizedTaxBenefits",
        "periodEndLabel": "Unrecognized tax benefit, end of period",
        "periodStartLabel": "Unrecognized tax benefit, beginning of period"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities": {
     "auth_ref": [
      "r363"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from settlements with taxing authorities.",
        "label": "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities",
        "negatedLabel": "Settlements"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense": {
     "auth_ref": [
      "r359"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for penalties related to a tax position claimed or expected to be claimed in the tax return.",
        "label": "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense",
        "terseLabel": "Unrecognized Tax Benefits, Income Tax Penalties Expense"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r362"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Increase in unrecognized tax benefit for positions taken in current period"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": {
     "auth_ref": [
      "r361"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.",
        "label": "Increase in unrecognized tax benefit for positions taken in prior period"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense": {
     "auth_ref": [
      "r359"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of interest expense for an underpayment of income taxes.",
        "label": "us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense",
        "terseLabel": "Unrecognized Tax Benefits, Interest on Income Taxes Expense"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": {
     "auth_ref": [
      "r364"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.",
        "label": "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
        "negatedLabel": "Statute of limitation expirations"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-15-income-taxes-unrecognized-tax-benefits-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r144",
      "r145",
      "r147",
      "r148",
      "r153",
      "r154",
      "r155"
     ],
     "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]"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember": {
     "auth_ref": [
      "r122"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Valuation allowance of deferred tax asset attributable to deductible temporary difference and carryforward.",
        "label": "SEC Schedule, 12-09, Valuation Allowance, Deferred Tax Asset [Member]"
       }
      }
     },
     "localname": "ValuationAllowanceOfDeferredTaxAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesBalance": {
     "auth_ref": [
      "r123"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of valuation and qualifying accounts and reserves.",
        "label": "us-gaap_ValuationAllowancesAndReservesBalance",
        "periodEndLabel": "Balance at End of Year",
        "periodStartLabel": "Balance at Beginning of Year"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesBalance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense": {
     "auth_ref": [
      "r123"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.",
        "label": "Additions Charged to Earnings"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesChargedToCostAndExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease": {
     "auth_ref": [
      "r123"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in valuation and qualifying accounts and reserves.",
        "label": "Charges to Reserve, Net"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesTypeAxis": {
     "auth_ref": [
      "r123"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-20-valuation-and-qualifying-accounts-schedule-of-valuation-and-qualifying-accounts-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "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]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements",
      "http://www.generac.com/20191231/role/statement-note-12-credit-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_VehiclesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equipment used primarily for road transportation.",
        "label": "Vehicles [Member]"
       }
      }
     },
     "localname": "VehiclesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-note-2-summary-of-accounting-policies-property-and-equipment-estimated-useful-lives-details",
      "http://www.generac.com/20191231/role/statement-note-8-balance-sheet-details-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r131",
      "r136"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Weighted average common shares outstanding - diluted: (in shares)",
        "totalLabel": "Diluted shares (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r130",
      "r136"
     ],
     "calculation": {
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted average common shares outstanding - basic: (in shares)",
        "terseLabel": "Weighted average shares, basic (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.generac.com/20191231/role/statement-consolidated-statements-of-comprehensive-income-",
      "http://www.generac.com/20191231/role/statement-note-14-earnings-per-share-reconciliation-of-basic-and-diluted-earnings-per-share-details"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 7
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "http://asc.fasb.org/topic&trid=2122149"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e7018-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r101": {
   "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r11": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "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"
  },
  "r112": {
   "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"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r12": {
   "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"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(n))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r121": {
   "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"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09(ColumnA))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24092-122690"
  },
  "r123": {
   "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"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r126": {
   "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"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22658-107794"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22663-107794"
  },
  "r13": {
   "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"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1448-109256"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1505-109256"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1252-109256"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1500-109256"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=SL5780133-109256"
  },
  "r135": {
   "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"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117327953&loc=d3e4984-109258"
  },
  "r14": {
   "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"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r141": {
   "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"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=118952077&loc=d3e1280-108306"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "270",
   "URI": "http://asc.fasb.org/topic&trid=2126967"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r15": {
   "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"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "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"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8721-108599"
  },
  "r158": {
   "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"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r16": {
   "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"
  },
  "r160": {
   "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"
  },
  "r161": {
   "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"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8813-108599"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8906-108599"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4647-111522"
  },
  "r169": {
   "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"
  },
  "r17": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r18": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=68051541&loc=SL49131252-203054"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=68051541&loc=SL49131252-203054"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r19": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r2": {
   "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"
  },
  "r20": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r202": {
   "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"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r21": {
   "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"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r211": {
   "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"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14615-108349"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(4))",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r22": {
   "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"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "460",
   "URI": "http://asc.fasb.org/topic&trid=2155896"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870"
  },
  "r228": {
   "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"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=117329964&loc=d3e12317-112629"
  },
  "r23": {
   "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"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=117329964&loc=d3e12355-112629"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(12)(c)",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=SL6540498-122764"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(16)(c)",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=SL6540498-122764"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(3)",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=SL6540498-122764"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "14",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=SL6540498-122764"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "15",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=SL6540498-122764"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "16(c)",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=SL6540498-122764"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r24": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/subtopic&trid=2208821"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r25": {
   "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"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "http://asc.fasb.org/extlink&oid=6409875&loc=d3e20015-108363"
  },
  "r26": {
   "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"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "712",
   "URI": "http://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "712",
   "URI": "http://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=109237824&loc=d3e1703-114919"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(10)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r27": {
   "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"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(j)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2410-114920"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2417-114920"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2439-114920"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2709-114920"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2709-114920"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2709-114920"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2709-114920"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2709-114920"
  },
  "r3": {
   "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"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2709-114920"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=6414203&loc=d3e39716-114964"
  },
  "r303": {
   "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"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116855982&loc=d3e4534-113899"
  },
  "r306": {
   "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"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r308": {
   "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"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r31": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r312": {
   "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"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r32": {
   "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"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r33": {
   "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"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r332": {
   "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"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(l)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r336": {
   "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"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=SL79508275-113901"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r34": {
   "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"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11149-113907"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11178-113907"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11374-113907"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=117330312&loc=d3e23163-113944"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314"
  },
  "r35": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=SL37586934-109318"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32123-109318"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31917-109318"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r36": {
   "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"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r37": {
   "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"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r371": {
   "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"
  },
  "r372": {
   "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"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117331294&loc=d3e36027-109320"
  },
  "r379": {
   "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"
  },
  "r38": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e39076-109324"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r385": {
   "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"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(4)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868840&loc=d3e2207-128464"
  },
  "r39": {
   "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"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5333-128473"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5504-128473"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5504-128473"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r399": {
   "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"
  },
  "r4": {
   "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"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569655-111683"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684"
  },
  "r406": {
   "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"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r41": {
   "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"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3A-02)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116822174&loc=d3e355033-122828"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3A-03)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116822174&loc=d3e355100-122828"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579240-113959"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959"
  },
  "r42": {
   "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"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5580258-113959"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41620-113959"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41638-113959"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959"
  },
  "r43": {
   "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"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624181-113959"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41675-113959"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109978405&loc=d3e80720-113993"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "815",
   "URI": "http://asc.fasb.org/topic&trid=2229140"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13279-108611"
  },
  "r44": {
   "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"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13433-108611"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "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"
  },
  "r444": {
   "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"
  },
  "r445": {
   "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"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r45": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41499-112717"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=84164817&loc=d3e45280-112737"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "840",
   "URI": "http://asc.fasb.org/topic&trid=2208923"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=119364159&loc=SL77916155-209984"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918638-209977"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977"
  },
  "r46": {
   "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"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977"
  },
  "r461": {
   "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"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918673-209980"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r465": {
   "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"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r467": {
   "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"
  },
  "r468": {
   "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"
  },
  "r469": {
   "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"
  },
  "r47": {
   "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"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r479": {
   "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"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "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"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.13,16)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r49": {
   "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"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r491": {
   "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"
  },
  "r492": {
   "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"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=108315417&loc=d3e61044-112788"
  },
  "r494": {
   "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"
  },
  "r495": {
   "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"
  },
  "r496": {
   "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"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r5": {
   "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"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.27(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r516": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r517": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1-"
  },
  "r518": {
   "Name": "Forms 10-K, 20-F, 40-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "15",
   "Subsection": "d-1"
  },
  "r519": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r520": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r521": {
   "Footnote": "2",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "28"
  },
  "r522": {
   "Footnote": "4",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "29"
  },
  "r523": {
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "09"
  },
  "r53": {
   "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"
  },
  "r54": {
   "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"
  },
  "r55": {
   "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"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "210",
   "URI": "http://asc.fasb.org/topic&trid=2122208"
  },
  "r59": {
   "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"
  },
  "r6": {
   "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"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a),(b),(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i),(j),(k)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i-k)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r64": {
   "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"
  },
  "r65": {
   "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"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e640-108580"
  },
  "r67": {
   "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"
  },
  "r68": {
   "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"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724391-108580"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6812-107765"
  },
  "r70": {
   "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"
  },
  "r71": {
   "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"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r73": {
   "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"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "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"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118951672&loc=d3e1436-108581"
  },
  "r79": {
   "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"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6911-107765"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r83": {
   "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"
  },
  "r84": {
   "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"
  },
  "r85": {
   "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"
  },
  "r86": {
   "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"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "220",
   "URI": "http://asc.fasb.org/topic&trid=2134417"
  },
  "r9": {
   "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"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "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"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a),(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r98": {
   "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"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>113
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836293280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Consolidation, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Principles of Consolidation</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The consolidated financial statements include the accounts of the Company and its subsidiaries that are consolidated in conformity with U.S. GAAP. All intercompany amounts and transactions have been eliminated in consolidation.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Cash </b><b>and Cash </b><b>Equivalents</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company considers all highly liquid investments purchased with an original maturity of <em style="font-weight: inherit; font-style: normal;">three</em> months or less to be cash equivalents.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Concentration Risk, Credit Risk, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Concentration of Credit Risk</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company maintains the majority of its domestic cash in <em style="font-weight: inherit; font-style: normal;">one</em> commercial bank in multiple operating and investment accounts. Balances on deposit are insured by the Federal Deposit Insurance Corporation (FDIC) up to specified limits. Balances in excess of FDIC limits are uninsured.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">One customer accounted for approximately 9% and 11% of accounts receivable at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> respectively. <span style="-sec-ix-hidden:c56031461"><span style="-sec-ix-hidden:c56031455"><span style="-sec-ix-hidden:c56031458">No</span></span> </span><em style="font-weight: inherit; font-style: normal;">one</em> customer accounted for greater than 5%, 6%, and 6%, of net sales during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> or <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesPolicyTextBlock', window );">Receivable [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Accounts Receivable</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Receivables are recorded at their face value amount less an allowance for doubtful accounts. The Company estimates and records an allowance for doubtful accounts based on specific identification and historical experience. The Company writes off uncollectible accounts against the allowance for doubtful accounts after all collection efforts have been exhausted. Sales are generally made on an unsecured basis, and certain balances are protected by credit insurance.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Inventories</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Inventories are stated at the lower of cost or market, with cost determined generally using the <em style="font-weight: inherit; font-style: normal;">first</em>-in, <em style="font-weight: inherit; font-style: normal;">first</em>-out method.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, Plant and Equipment, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Property and Equipment </b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Property and equipment are recorded at cost and are being depreciated using the straight-line method over the estimated useful lives of the assets, which are summarized below (in years). Costs of leasehold improvements are amortized over the lesser of the term of the lease (including renewal option periods) or the estimated useful lives of the improvements. Finance lease right of use assets are included in property and equipment. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> "Leases," to the consolidated financial statements for the Company's lease disclosure.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Land improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">8</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">10</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">2</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Total depreciation expense was $32,265, $25,296, and $23,127 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy', window );">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Goodwill and Other Indefinite-Lived Intangible Assets</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Goodwill represents the excess of the purchase price over fair value of identifiable net assets acquired from business acquisitions. Goodwill is <em style="font-weight: inherit; font-style: normal;">not</em> amortized, but is reviewed for impairment on an annual basis and between annual tests if indicators of impairment are present. The Company evaluates goodwill for impairment annually as of <em style="font-weight: inherit; font-style: normal;"> October 31 </em>or more frequently when an event occurs or circumstances change that indicates the carrying value <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable. The Company has the option to assess goodwill for impairment by performing either a qualitative assessment or quantitative test. The qualitative assessment determines whether it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount. If the Company determines that it is <em style="font-weight: inherit; font-style: normal;">not</em> more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount, then the quantitative test is <em style="font-weight: inherit; font-style: normal;">not</em> required to be performed. If the Company determines that it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that the fair value of a reporting unit is less than its carrying amount, the Company is required to perform the quantitative test. In the quantitative test, the calculated fair value of the reporting unit is compared to its book value including goodwill. If the fair value of the reporting unit is in excess of its book value, the related goodwill is <em style="font-weight: inherit; font-style: normal;">not</em> impaired. If the fair value of the reporting unit is less than its book value, an impairment loss is recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Other indefinite-lived intangible assets consist of certain tradenames. The Company tests the carrying value of these tradenames annually as of <em style="font-weight: inherit; font-style: normal;"> October 31, </em>or more frequently when an event occurs or circumstances change that indicates the carrying value <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable, by comparing the assets&#8217; fair value to its carrying value. Fair value is measured using a relief-from-royalty approach, which assumes the fair value of the tradename is the discounted cash flows of the amount that would be paid had the Company <em style="font-weight: inherit; font-style: normal;">not</em> owned the tradename and instead licensed the tradename from another company.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company performed the required annual impairment tests for goodwill and other indefinite-lived intangible assets for the fiscal years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> and found <span style="-sec-ix-hidden:c56031520"><span style="-sec-ix-hidden:c56031521"><span style="-sec-ix-hidden:c56031519">no</span> </span></span>impairment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Impairment of Long-Lived Assets</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company periodically evaluates the carrying value of long-lived assets (excluding goodwill and indefinite-lived tradenames). Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount <em style="font-weight: inherit; font-style: normal;"> may </em><em style="font-weight: inherit; font-style: normal;">not</em> be recoverable. If the sum of the expected future undiscounted cash flows is less than the carrying amount of an asset, a loss is recognized for the difference between the fair value and carrying value of the asset.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtPolicyTextBlock', window );">Debt, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Debt Issuance Costs</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Debt discounts and direct costs incurred in connection with the issuance of long-term debt are deferred and recorded as a reduction of outstanding debt and amortized to interest expense using the effective interest method over the terms of the related credit agreements. $4,712, $4,749, and $3,516 of deferred financing costs and original issue discount were amortized to interest expense during fiscal years <em style="font-weight: inherit; font-style: normal;">2019,</em> <em style="font-weight: inherit; font-style: normal;">2018</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively. Excluding the impact of any future long-term debt issuances or prepayments, estimated amortization to interest expense for the next <em style="font-weight: inherit; font-style: normal;">five</em> years is as follows: <em style="font-weight: inherit; font-style: normal;">2020</em> - <span style="-sec-ix-hidden:c56031536">$2,598;</span> <em style="font-weight: inherit; font-style: normal;">2021</em> - <span style="-sec-ix-hidden:c56031539">$2,640;</span> <em style="font-weight: inherit; font-style: normal;">2022</em> - <span style="-sec-ix-hidden:c56031541">$2,689;</span> <em style="font-weight: inherit; font-style: normal;">2023</em> - <span style="-sec-ix-hidden:c56031544">$2,579;</span> <em style="font-weight: inherit; font-style: normal;">2024</em> - $2,508.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Tax, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Income Taxes</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company is a C Corporation and therefore accounts for income taxes pursuant to the liability method. Accordingly, the current or deferred tax consequences of a transaction are measured by applying the provision of enacted tax laws to determine the amount of taxes payable currently or in future years. Deferred income taxes are provided for temporary differences between the income tax bases of assets and liabilities and their carrying amounts for financial reporting purposes. In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than <em style="font-weight: inherit; font-style: normal;">not</em> that some portion or all of the deferred tax assets will <em style="font-weight: inherit; font-style: normal;">not</em> be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the years in which those temporary differences become deductible. The Company considers taxable income in prior carryback years, the scheduled reversal of deferred tax liabilities, projected future taxable income and tax planning strategies, as appropriate, in making this assessment.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue from Contract with Customer [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Revenue Recognition</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><br/> The Company&#8217;s revenues primarily consist of product sales to its customers. The Company considers the purchase orders, which in some cases are governed by master sales agreements, to be the contracts with the customers. For each contract, the Company considers the commitment to transfer products, each of which is distinct, to be the identified performance obligations. Revenue is measured as the amount of consideration the Company expects to be entitled in exchange for the transfer of product, which is generally the price stated in the contract specific for each item sold, adjusted for the value of expected returns, discounts, rebates, or other promotional incentives or allowances offered to our customers. Expected returns for damaged or defective product are estimated using the expected value method based upon historical product return experience. Discounts and rebates offered to customers are typically defined in the master sales agreements with customers and, therefore, are recorded using the most likely amount method based on the terms of the contract. Promotional incentives are defined programs offered for short, specific periods of time and are estimated using the expected value method based upon historical experience. The Company does <em style="font-weight: inherit; font-style: normal;">not</em> expect the transaction price for revenue recognized will be subject to a significant revenue reversal. As the Company&#8217;s product sale contracts and standard payment terms have a duration of less than <em style="font-weight: inherit; font-style: normal;">one</em> year, it uses the practical expedient applicable to such contracts and does <em style="font-weight: inherit; font-style: normal;">not</em> consider the time value of money. Sales, use, value add and other similar taxes assessed by governmental authorities and collected concurrent with revenue-producing activities are excluded from revenue. The Company has elected to recognize the cost for freight activities when control of the product has transferred to the customer as an expense within cost of goods sold in the consolidated statements of comprehensive income. Product revenues are recognized at the point in time when control of the product is transferred to the customer, which typically occurs upon shipment or delivery to the customer. To determine when control has transferred, the Company considers if there is a present right to payment and if legal title, physical possession, and the significant risks and rewards of ownership of the asset has transferred to the customer. As substantially all of the Company&#8217;s product revenues are recognized at a point in time, the amount of unsatisfied performance obligations at each period end is <em style="font-weight: inherit; font-style: normal;">not</em> material. The Company&#8217;s contracts have an original expected duration of <em style="font-weight: inherit; font-style: normal;">one</em> year or less. As a result, the Company has elected to use the practical expedient to <em style="font-weight: inherit; font-style: normal;">not</em> disclose its remaining performance obligations.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">At the request of certain customers, the Company will warehouse inventory billed to the customer but <em style="font-weight: inherit; font-style: normal;">not</em> delivered. Unless all revenue recognition criteria have been met, the Company does <em style="font-weight: inherit; font-style: normal;">not</em> recognize revenue on these transactions until the customer takes possession of the product.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">While the Company&#8217;s standard payment terms are less than <em style="font-weight: inherit; font-style: normal;">one</em> year, the specific payment terms and conditions in its customer contracts vary. In some cases, customers prepay for their goods; in other cases, after appropriate credit evaluation, an open credit line is granted and payment is due in arrears. Contracts with payment in arrears are recognized in the consolidated balance sheets as accounts receivable upon revenue recognition, while contracts where customers pay in advance are recognized as customer deposits and recorded in other accrued liabilities in the consolidated balance sheets until revenue is recognized. The balance of customer deposits (contract liabilities) was $9,952 and $14,174 at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;"> December 31, 2018, </em>respectively. During the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>the Company recognized revenue of $9,589 related to amounts included in the <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>customer deposit balance. The Company typically recognizes revenue within <em style="font-weight: inherit; font-style: normal;">one</em> year of the receipt of the customer deposit.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company offers standard warranty coverage on substantially all products that it sells and accounts for this standard warranty coverage as an assurance warranty. As such, <em style="font-weight: inherit; font-style: normal;">no</em> transaction price is allocated to the standard warranty, and the Company records a liability for product warranty obligations at the time of sale to a customer based upon historical warranty experience. Refer to Note <em style="font-weight: inherit; font-style: normal;">11,</em> &#8220;Product Warranty Obligations,&#8221; to the consolidated financial statements for further information regarding the Company&#8217;s standard warranties.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company also sells extended warranty coverage for certain products, which it accounts for as service warranties. In most cases, the extended warranty is sold as a separate contract. As such, extended warranty sales are considered a separate performance obligation, and the extended warranty transaction is separate and distinct from the product. The extended warranty transaction price is initially recorded as deferred revenue in the consolidated balance sheets and amortized on a straight-line basis to net sales in the consolidated statements of comprehensive income over the life of the contracts following the standard warranty period. For extended warranty contracts that the Company sells under a <em style="font-weight: inherit; font-style: normal;">third</em>-party marketing agreement, it is required to pay fees to the <em style="font-weight: inherit; font-style: normal;">third</em>-party service provider and classifies these fees as costs to obtain a contract. The contract costs are deferred and recorded as other assets in the consolidated balance sheets. The deferred contract costs are amortized to net sales in the consolidated statements of comprehensive income consistent with how the related deferred revenue is recognized. Refer to Note <em style="font-weight: inherit; font-style: normal;">11,</em> &#8220;Product Warranty Obligations,&#8221; to the consolidated financial statements for further information regarding the Company&#8217;s extended warranties.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In addition to extended warranties, the Company offers other services, including remote monitoring, installation and maintenance services in limited circumstances. Total service revenues account for less than <em style="font-weight: inherit; font-style: normal;">three</em> percent of revenue during the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Refer to Note <em style="font-weight: inherit; font-style: normal;">7,</em> &#8220;Segment Reporting,&#8221; to the consolidated financial statements for the Company&#8217;s disaggregated revenue disclosure. The information discussed above is applicable to each of the Company&#8217;s product classes.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdvertisingCostsPolicyTextBlock', window );">Advertising Cost [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>Advertising and Co-Op Advertising</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Expenditures for advertising, included in selling and service expenses in the consolidated statements of comprehensive income, are expensed as incurred. Expenditures for advertising production costs are expensed when the related advertisement is <em style="font-weight: inherit; font-style: normal;">first</em> run. Total expenditures for advertising were $44,153, $34,792, and $45,926 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpensePolicy', window );">Research and Development Expense, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Research and Development</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company expenses research and development costs as incurred. Total expenditures incurred for research and development were $68,394, $50,019, and $42,869 for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em><em style="font-weight: inherit; font-style: normal;">2018,</em> and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency Transactions and Translations Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Foreign Currency Translation and Transactions</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Balance sheet amounts for non-U.S. Dollar functional currency businesses are translated into U.S. Dollars at the rates of exchange in effect at the end of the fiscal year. Income and expenses incurred in a foreign currency are translated at the average rates of exchange in effect during the year. The related translation adjustments are made directly to accumulated other comprehensive loss, a component of stockholders&#8217; equity, in the consolidated balance sheets. Gains and losses from foreign currency transactions are recognized as incurred in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Fair Value of Financial Instruments</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10,</em> <i>Fair Value Measurement</i><i>,</i> defines fair value, establishes a consistent framework for measuring fair value, and expands disclosure for each major asset and liability category measured at fair value on either a recurring basis or nonrecurring basis. ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10</em> clarifies that fair value is an exit price, representing the amount that would be received in the sale of an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. As a basis for considering such assumptions, the pronouncement establishes a <em style="font-weight: inherit; font-style: normal;">three</em>-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value as follows: (Level <em style="font-weight: inherit; font-style: normal;">1</em>) observable inputs such as quoted prices in active markets; (Level <em style="font-weight: inherit; font-style: normal;">2</em>) inputs, other than the quoted prices in active markets, that are observable either directly or indirectly; and (Level <em style="font-weight: inherit; font-style: normal;">3</em>) unobservable inputs in which there is little or <em style="font-weight: inherit; font-style: normal;">no</em> market data, which require the reporting entity to develop its own assumptions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company believes the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and ABL facility borrowings), excluding Term Loan borrowings, approximates the fair value of these instruments based upon their short-term nature. The fair value of Term Loan borrowings, which have an aggregate carrying value of $812,953, was approximately $833,092 (Level <em style="font-weight: inherit; font-style: normal;">2</em>) at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019, </em>as calculated based on independent valuations whose inputs and significant value drivers are observable.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">For the fair value of the assets and liabilities measured on a recurring basis, refer to the fair value table in Note <em style="font-weight: inherit; font-style: normal;">5,</em> &#8220;Derivative Instruments and Hedging Activities,&#8221; to the consolidated financial statements. The fair value of all derivative contracts is classified as Level <em style="font-weight: inherit; font-style: normal;">2.</em> The valuation techniques used to measure the fair value of derivative contracts, all of which have counterparties with high credit ratings, were based on quoted market prices or model driven valuations using significant inputs derived from or corroborated by observable market data. The fair value of derivative contracts considers the Company&#8217;s credit risk in accordance with ASC <em style="font-weight: inherit; font-style: normal;">820</em>-<em style="font-weight: inherit; font-style: normal;">10.</em></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Use of Estimates</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativesPolicyTextBlock', window );">Derivatives, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>Derivative Instruments and Hedging Activities</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company records all derivatives in accordance with ASC <em style="font-weight: inherit; font-style: normal;">815,</em> <i>Derivatives and Hedging</i><i>,</i> which requires derivative instruments be reported in the consolidated balance sheets at fair value and establishes criteria for designation and effectiveness of hedging relationships. The Company is exposed to market risk such as changes in commodity prices, foreign currencies and interest rates. The Company does <em style="font-weight: inherit; font-style: normal;">not</em> hold or issue derivative financial instruments for trading purposes. Refer to Item <em style="font-weight: inherit; font-style: normal;">7A</em> of this Annual Report on Form <em style="font-weight: inherit; font-style: normal;">10</em>-K for further information on the Company&#8217;s derivatives.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-based Payment Arrangement [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>S</b><b>hare</b><b>-Based Compensation</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Share-based compensation expense, including stock options and restricted stock awards, is generally recognized on a straight-line basis over the vesting period based on the fair value of awards which are expected to vest. The fair value of all share-based awards is estimated on the date of grant. Refer to Note <em style="font-weight: inherit; font-style: normal;">17,</em> &#8220;Share Plans,&#8221; to the consolidated financial statements for further information on the Company&#8217;s share-based compensation plans and accounting.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Accounting Pronouncements, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>New Accounting Pronouncements </b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>New Accounting Standards <em style="font-weight: inherit; font-style: normal;">Not</em> Yet Adopted</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">In <em style="font-weight: inherit; font-style: normal;"> June 2016, </em>the Financial Accounting Standards&#160;Board (FASB) issued Accounting Standards Update (ASU) <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">13,</em> <i>Financial Instruments &#8211; Credit Losses (Topic <em style="font-weight: inherit; font-style: normal;">326</em>)</i>: <i>Measurement of Credit Losses on Financial Instruments</i>, which represents a new credit loss standard that will change the impairment model for most financial assets and certain other financial instruments. Specifically, this guidance will require entities to utilize a new &#8220;expected loss&#8221; model as it relates to trade and other receivables. In addition, entities will be required to recognize an allowance for estimated credit losses on available-for-sale debt securities, regardless of the length of time that a security has been in an unrealized loss position. This guidance will be effective for annual reporting periods beginning after <em style="font-weight: inherit; font-style: normal;"> December 15, 2019, </em>including interim periods within those annual reporting periods, and early adoption is permitted. The Company has established a project plan and an implementation team to adopt and apply the new standard. The Company is in the process of implementing necessary changes to accounting policies, processes, and controls to enable compliance with this new standard. The Company continues to evaluate the impact the adoption of this standard will have on its consolidated financial statements, and does <em style="font-weight: inherit; font-style: normal;">not</em> believe this new standard will have a material impact.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">There are several other new accounting pronouncements issued by the FASB. Each of these pronouncements, as applicable, has been or will be adopted by the Company. Management does <em style="font-weight: inherit; font-style: normal;">not</em> believe any of these accounting pronouncements has had or will have a material impact on the Company&#8217;s consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b><i>Recently Adopted </i></b><b><i>Accounting Standards</i></b></p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> <i>Leases</i><i> </i>(Topic <em style="font-weight: inherit; font-style: normal;">842</em>). This guidance was issued to increase transparency and comparability among organizations by requiring the recognition of lease assets and lease liabilities in the balance sheet and by disclosing key information about leasing arrangements. The Company adopted this standard using the modified retrospective approach as of the date of adoption, meaning <em style="font-weight: inherit; font-style: normal;">no</em> prior period balances were impacted by the adoption. Additionally, the Company elected to adopt the standard using the package of practical expedients permitted under the standard&#8217;s transition guidance, which allowed the Company to carry forward its historical lease classifications, and embedded lease and initial direct cost assessments. The adoption of the standard had a material impact on the Company&#8217;s consolidated balance sheet primarily related to the recognition of right-of-use (ROU) assets and lease liabilities for operating leases. However, the adoption did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the consolidated statement of comprehensive income and statement of cash flows. Refer to Note <em style="font-weight: inherit; font-style: normal;">10,</em> &#8220;Leases,&#8221; for further information regarding the Company&#8217;s leases.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/>
    </div>
   </div>

   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2018</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> <i>Reclassification of Certain Tax Effects from Accumulated Other Comprehensive Income</i>. This guidance was issued to address the impact of the change in the U.S. federal corporate income tax rate from the <em style="font-weight: inherit; font-style: normal;">2017</em> U.S. Tax Cuts and Jobs Act (the &#8220;Tax Act&#8221;) on items recorded as a component of accumulated other comprehensive income (AOCI). This guidance allows companies to reclassify to retained earnings the stranded tax effects lodged in AOCI as a result of the Tax Act. Upon adoption of the ASU, the Company elected to <em style="font-weight: inherit; font-style: normal;">not</em> reclassify the stranded income tax effects from AOCI to retained earnings.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">On <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2017</em>-<em style="font-weight: inherit; font-style: normal;">12,</em> <i>Derivatives</i><i> and Hedging &#8211; Targeted Improvements to Accounting for Hedging Activities</i>. This guidance was issued to improve the financial reporting of hedging relationships to better portray the economic results of an entity&#8217;s risk management activities in its financial statements and to make certain targeted improvements to simplify the application of the hedge accounting guidance. The adoption of this standard did <em style="font-weight: inherit; font-style: normal;">not</em> have an impact on the Company&#8217;s hedging strategies, and did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the Company&#8217;s results of operations and financial position.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">On <em style="font-weight: inherit; font-style: normal;"> April 1, 2019, </em>the Company adopted ASU <em style="font-weight: inherit; font-style: normal;">2018</em>-<em style="font-weight: inherit; font-style: normal;">15,</em> <i>Intangibles &#8211; Goodwill and Other &#8211; Internal-Use Software: Customer&#8217;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That is a Service Contract.</i> This guidance was issued to address the diversity in practice related to the accounting for costs of implementation activities performed in a cloud computing arrangement that is a service contract. The Company adopted this standard prospectively, impacting all implementation costs incurred after adoption. The adoption did <em style="font-weight: inherit; font-style: normal;">not</em> have a material impact on the Company&#8217;s results of operations and financial position.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for advertising cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108315417&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.3A-02)<br> -URI http://asc.fasb.org/extlink&amp;oid=116822174&amp;loc=d3e355033-122828<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.3A-03)<br> -URI http://asc.fasb.org/extlink&amp;oid=116822174&amp;loc=d3e355100-122828<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy related to debt. Includes, but is not limited to, debt issuance costs, the effects of refinancings, method of amortizing debt issuance costs and original issue discount, and classifications of debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6802200&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for its derivative instruments and hedging activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=d3e41620-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=d3e41638-113959<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5579245-113959<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=d3e41675-113959<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(n))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5579240-113959<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13279-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450222&amp;loc=d3e30840-110895<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109226317&amp;loc=d3e202-110218<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32847-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 740<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6491622&amp;loc=d3e9504-115650<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32809-109319<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116657188&amp;loc=SL116659661-227067<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32840-109319<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32247-109318<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32280-109318<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 05<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=65884525&amp;loc=d3e40913-109327<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116846552&amp;loc=d3e543-108305<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&amp;loc=d3e5033-111524<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10178-111534<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10149-111534<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(f)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>114
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847648160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Earnings Per Share<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Share [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">14.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Earnings Per Share</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">Basic earnings per share is calculated by dividing net income attributable to the common shareholders of the Company by the weighted average number of common shares outstanding during the period, exclusive of restricted shares. Except where the result would be anti-dilutive, diluted earnings per share is calculated by assuming the vesting of unvested restricted stock and the exercise of stock options. Refer to Note <em style="font-weight: inherit; font-style: normal;">4,</em> &#8220;Redeemable Noncontrolling Interest,&#8221; to the consolidated financial statements for further information regarding the accounting for redeemable noncontrolling interests.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Year Ended December 31, </b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2018</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>2017</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Numerator</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to Generac Holdings Inc.</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">252,007</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">238,257</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">157,808</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Redeemable noncontrolling interest redemption value adjustment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,253</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(17,970</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">909</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to common shareholders</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">253,260</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">220,287</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">158,717</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><b>Denominator</b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>&#160;</b></td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average shares, basic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,926,986</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">61,662,031</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">62,040,704</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Dilutive effect of stock compensation awards (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">938,460</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">571,194</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">602,168</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Diluted shares</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">62,865,446</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">62,233,225</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">62,642,872</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net income attributable to common shareholders per share</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Basic</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.09</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.57</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.56</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Diluted</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.03</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.54</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.53</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Excludes approximately 26,100 and 147,400 stock options for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>and <em style="font-weight: inherit; font-style: normal;">2017,</em> respectively, as the impact of such awards was anti-dilutive. There were <em style="font-weight: inherit; font-style: normal;"><span style="-sec-ix-hidden:c56032550">no</span></em> awards with an anti-dilutive impact for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p> </td>
     </tr>
    </tbody>
   </table>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>115
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847799632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 18 - Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">18.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:left;margin-bottom:0pt;font-size:10pt;"><b>Commitments and Contingencies</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The Company has an arrangement with a finance company to provide floor plan financing for certain dealers. The Company receives payment from the finance company after shipment of product to the dealer. The Company participates in the cost of dealer financing up to certain limits and has agreed to repurchase products repossessed by the finance company, but does <em style="font-weight: inherit; font-style: normal;">not</em> indemnify the finance company for any credit losses they incur. The amount financed by dealers which remained outstanding under this arrangement at <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018</em> was approximately $49,600 and $47,200, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">In the normal course of business, the Company is named as a defendant in various lawsuits in which claims are asserted against the Company. In the opinion of management, the liabilities, if any, which <em style="font-weight: inherit; font-style: normal;"> may </em>result from such lawsuits are <em style="font-weight: inherit; font-style: normal;">not</em> expected to have a material adverse effect on the financial position, results of operations, or cash flows of the Company.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"/><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><div class="PGHDR" style="text-align: left; width: 100%"><a href="#toc" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt"/>
    </div>
   </div>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>116
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858737664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Accumulated Other Comprehensive Loss<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNoteTextBlock', window );">Comprehensive Income (Loss) Note [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">6.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Accumulated Other Comprehensive Loss</b><b> </b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">The following presents a tabular disclosure of changes in AOCL during the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019 </em>and <em style="font-weight: inherit; font-style: normal;">2018,</em> net of tax:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Foreign Currency Translation Adjustments</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Defined Benefit Pension Plan</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Unrealized Gain (Loss) on Cash Flow Hedges</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Total</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Beginning Balance &#8211; January 1, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(18,832</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,560</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(23,813</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss) before reclassifications</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,210</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,474</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: middle;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(1)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(13,855</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: middle;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(2)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,171</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,067</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(3)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,067</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net current-period other comprehensive income (loss)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,210</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(13,855</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,104</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Ending Balance &#8211; December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(16,622</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(8,295</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(24,917</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>

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

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Foreign Currency Translation Adjustments</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Defined Benefit Pension Plan</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Unrealized Gain (Loss) on Cash Flow Hedges</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Beginning Balance &#8211; January 1, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(12,856</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,636</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(21,198</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss) before reclassifications</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(5,976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(156</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(4)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,924</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(5)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,208</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">593</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(6)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">593</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net current-period other comprehensive income (loss)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">437</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,924</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,615</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Ending Balance &#8211; December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(18,832</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,560</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(23,813</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrecognized actuarial gains of $1,992 net of tax effect of $(518), included in the computation of net periodic pension cost for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019. </em>Refer to Note <em style="font-weight: inherit; font-style: normal;">16,</em> &#8220;Benefit Plans,&#8221; to the consolidated financial statements for additional information.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrealized losses of $(18,732), net of tax effect of $4,877 for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2019.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="margin: 0pt;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">3</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Details of reclassifications from AOCL during <em style="font-weight: inherit; font-style: normal;">2019</em> are as follows:</p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin-bottom:0pt;margin-left:36pt;margin-right:0pt;margin-top:0pt;text-align:justify;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 27pt; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Amounts reclassified from AOCL</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,920</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of net loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">843</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total before tax</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,763</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income tax impact</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,696</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,067</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">4</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrecognized actuarial losses of $(211), net of tax benefit of $55, included in the computation of net periodic pension cost for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>Refer to Note <em style="font-weight: inherit; font-style: normal;">16,</em> &#8220;Benefit Plans,&#8221; to the consolidated financial statements for additional information.</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">5</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents unrealized gains of $3,951, net of tax effect of $(1,027) for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018.</em></p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">6</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Represents actuarial losses of $802, net of tax effect of $(209), amortized to net periodic pension cost for the year ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018. </em>Refer to Note <em style="font-weight: inherit; font-style: normal;">16,</em> &#8220;Benefit Plans,&#8221; to the consolidated financial statements for additional information.</p> </td>
     </tr>
    </tbody>
   </table>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNoteTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -URI http://asc.fasb.org/topic&amp;trid=2134417<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNoteTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>117
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858817536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesOfLesseeDisclosureTextBlock', window );">Leases of Lessee Disclosure [Text Block]</a></td>
<td class="text">
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b><em style="font-weight: inherit; font-style: normal;">10.</em></b></p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;"><b>Leases</b></p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:justify;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company determines if an arrangement is or contains a lease at contract inception. The Company recognizes a right of use (&#8220;ROU&#8221;) asset and lease liability at the lease commencement date based on the present value of the lease payments over the lease term. As the Company&#8217;s leases generally do <em style="font-weight: inherit; font-style: normal;">not</em> provide an implicit rate, the incremental borrowing rate is used to determine the present value of lease payments. The incremental borrowing rate is a collateralized rate determined based on the lease term, the Company&#8217;s credit rating, and other market information available at the commencement date. The ROU asset also includes any lease payments made prior to the commencement date and is reduced by any lease incentives. The lease term <em style="font-weight: inherit; font-style: normal;"> may </em>include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for operating leases is recognized on a straight-line basis over the lease term, while lease expense for finance leases is recognized as depreciation and interest expense using the effective interest method. The Company&#8217;s variable lease expense generally consists of property tax and insurance payments that are variable in nature, however, these amounts are immaterial to the consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company has lease agreements with both lease and nonlease components, which it elected to account for as a single lease component. However, the Company did <em style="font-weight: inherit; font-style: normal;">not</em> elect to apply the recognition exception for short-term leases. The Company is applying these elections to all asset classes.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company leases certain manufacturing facilities, distribution centers, office space, warehouses, automobiles, machinery and computer equipment globally under both finance and operating leases. The Company&#8217;s leases have remaining lease terms of up to 20 years, of which certain leases, primarily within the buildings and improvements asset class, include options to extend the leases for up to 10 additional years. Further, the Company leases certain buildings from a noncontrolling interest holder, which the Company has determined to be arms&#8217; length transactions.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company is a lessor of <em style="font-weight: inherit; font-style: normal;">one</em> building that it leases to a <em style="font-weight: inherit; font-style: normal;">third</em> party. The lease income related to this arrangement is <em style="font-weight: inherit; font-style: normal;">not</em> material to the consolidated financial statements.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">The Company records its operating lease cost and amortization of finance lease ROU assets within cost of goods sold or operating expenses in the consolidated statements of comprehensive income depending on the cost center of the underlying asset. The Company records its finance lease interest cost within interest expense in the consolidated statements of comprehensive income.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The components of total lease cost consist of the following:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Twelve Months Ended December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating lease cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,647</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease cost:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of ROU assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,531</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Interest on lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,227</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total lease cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,405</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Prior to the adoption of ASC <em style="font-weight: inherit; font-style: normal;">842,</em> lease expense consisted of payments on operating leases. Total rent expense related to operating leases for the years ended <em style="font-weight: inherit; font-style: normal;"> December 31, 2018 </em>and <em style="font-weight: inherit; font-style: normal;">2017</em> was approximately $10,739 and $10,845, respectively.</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">As of <em style="font-weight: inherit; font-style: normal;"> January 1, 2019, </em>the date of the adoption of ASU <em style="font-weight: inherit; font-style: normal;">2016</em>-<em style="font-weight: inherit; font-style: normal;">02,</em> the Company recognized ROU assets and lease liabilities related to operating leases of $42,024 and $42,056, respectively, and there was no cumulative effect adjustment made to retained earnings. Supplemental balance sheet information related to the Company&#8217;s leases is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating Leases</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease ROU assets (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">35,950</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities - current (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,231</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities - noncurrent (3)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">29,778</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total operating lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">37,009</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance Leases</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease ROU assets, gross</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,142</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accumulated depreciation - finance lease ROU assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,079</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Finance lease ROU assets, net (4)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">26,063</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease liabilities - current (5)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,830</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease liabilities - noncurrent (6)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24,132</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total finance lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">25,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">1</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the operating lease and other assets line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">2</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the other accrued liabilities line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">3</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the operating lease and other long-term liabilities line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">4</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the property and equipment, net line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">5</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the current portion of long-term borrowings and finance lease obligations line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:'Times New Roman', Times, serif;font-size:10pt;">
    <tbody>
     <tr>
      <td style="width:18pt;">&#160;</td>
      <td style="width:18pt;vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">(<em style="font-weight: inherit; font-style: normal;">6</em>)</p> </td>
      <td style="vertical-align:top;"> <p style="font-family:'Times New Roman', Times, serif;margin-right:0pt;margin-top:0pt;text-align:justify;margin-bottom:0pt;font-size:10pt;">Recorded in the long-term borrowings and finance lease obligations line within the consolidated balance sheets</p> </td>
     </tr>
    </tbody>
   </table>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Supplemental cash flow information related to the Company&#8217;s leases is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Three Months Ended December 31, 2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b>Twelve Months Ended December 31, 2019</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash paid for amounts included in the measurement of lease liabilities</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating cash flows from operating leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,174</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,125</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating cash flows from finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">471</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,864</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financing cash flows from finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,237</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ROU assets obtained in exchange for lease liabilities</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">239</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,021</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">632</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,797</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
    <div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">
     <em style="font-weight: inherit; font-style: normal;"/></div></div><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: justify;">Weighted average remaining lease term and discount rate information related to the Company&#8217;s leases is as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"><b>&#160;</b></p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average remaining lease term (in years)</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.90</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13.87</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average discount rate</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.59</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.83</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">The maturities of the Company&#8217;s lease liabilities are as follows:</p>
   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>As of December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Finance Leases</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Operating Leases</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,769</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,086</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,352</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,029</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,536</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,472</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,659</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,629</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2024</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,650</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,288</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2024</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">29,371</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,232</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total minimum lease payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">45,337</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44,736</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest component</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(19,375</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(7,727</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Present value of minimum lease payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">25,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">37,009</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>

   <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:left;"/>
  <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesOfLesseeDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for lessee entity's leasing arrangements including, but not limited to, all of the following: (a.) The basis on which contingent rental payments are determined, (b.) The existence and terms of renewal or purchase options and escalation clauses, (c.) Restrictions imposed by lease agreements, such as those concerning dividends, additional debt, and further leasing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -URI http://asc.fasb.org/topic&amp;trid=2208923<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesOfLesseeDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>118
<FILENAME>R107.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6855074544">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Note 20 - Valuation and Qualifying Accounts - Schedule of Valuation and Qualifying Accounts (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_AllowanceForCreditLossMember', window );">SEC Schedule, 12-09, Allowance, Credit Loss [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at Beginning of Year</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 4,873<span></span>
</td>
<td class="nump">$ 4,805<span></span>
</td>
<td class="nump">$ 5,642<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Additions Charged to Earnings</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">3,086<span></span>
</td>
<td class="nump">1,941<span></span>
</td>
<td class="nump">346<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease', window );">Charges to Reserve, Net</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="num">(1,033)<span></span>
</td>
<td class="num">(2,123)<span></span>
</td>
<td class="num">(1,842)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired', window );">Reserves Assumed in Acquisition</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">42<span></span>
</td>
<td class="nump">250<span></span>
</td>
<td class="nump">659<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at End of Year</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6,968<span></span>
</td>
<td class="nump">4,873<span></span>
</td>
<td class="nump">4,805<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_InventoryValuationReserveMember', window );">SEC Schedule, 12-09, Reserve, Inventory [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at Beginning of Year</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">23,140<span></span>
</td>
<td class="nump">15,987<span></span>
</td>
<td class="nump">13,031<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Additions Charged to Earnings</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">4,821<span></span>
</td>
<td class="nump">10,004<span></span>
</td>
<td class="nump">6,164<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease', window );">Charges to Reserve, Net</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="num">(3,867)<span></span>
</td>
<td class="num">(3,720)<span></span>
</td>
<td class="num">(4,036)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired', window );">Reserves Assumed in Acquisition</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">199<span></span>
</td>
<td class="nump">869<span></span>
</td>
<td class="nump">828<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at End of Year</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">24,293<span></span>
</td>
<td class="nump">23,140<span></span>
</td>
<td class="nump">15,987<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember', window );">SEC Schedule, 12-09, Valuation Allowance, Deferred Tax Asset [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at Beginning of Year</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5,802<span></span>
</td>
<td class="nump">6,817<span></span>
</td>
<td class="nump">4,362<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Additions Charged to Earnings</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">478<span></span>
</td>
<td class="nump">2,455<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease', window );">Charges to Reserve, Net</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired', window );">Reserves Assumed in Acquisition</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(778)<span></span>
</td>
<td class="num">(1,493)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at End of Year</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 5,024<span></span>
</td>
<td class="nump">$ 5,802<span></span>
</td>
<td class="nump">$ 6,817<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Deductions from the allowance for doubtful accounts equal accounts receivable written off against the allowance, less recoveries. Deductions from the reserves for inventory excess and obsolete items equal inventory written off against the reserve as items were disposed of.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in valuation and qualifying accounts and reserves from business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_SecSchedule1209ValuationAllowancesAndReservesIncreaseDecreaseBusinessAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesBalance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_AllowanceForCreditLossMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_AllowanceForCreditLossMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_InventoryValuationReserveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_InventoryValuationReserveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>119
<FILENAME>R103.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6856361504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Share Plans - Summary of Stock Option Activity (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="4">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding, number of options (in shares)</a></td>
<td class="nump">1,521,167<span></span>
</td>
<td class="nump">1,472,130<span></span>
</td>
<td class="nump">1,482,964<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 37.70<span></span>
</td>
<td class="nump">$ 33.11<span></span>
</td>
<td class="nump">$ 27.49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding, weighted average remaining contractual term (Year)</a></td>
<td class="text">6 years 10 months 24 days<span></span>
</td>
<td class="text">7 years<span></span>
</td>
<td class="text">7 years 3 months 18 days<span></span>
</td>
<td class="text">7 years 6 months<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding, aggregate intrinsic value</a></td>
<td class="nump">$ 93,242<span></span>
</td>
<td class="nump">$ 19,212<span></span>
</td>
<td class="nump">$ 25,281<span></span>
</td>
<td class="nump">$ 23,840<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted, number of options (in shares)</a></td>
<td class="nump">369,779<span></span>
</td>
<td class="nump">366,231<span></span>
</td>
<td class="nump">346,421<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 52.07<span></span>
</td>
<td class="nump">$ 43.88<span></span>
</td>
<td class="nump">$ 40.13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised, number of options (in shares)</a></td>
<td class="num">(263,250)<span></span>
</td>
<td class="num">(267,909)<span></span>
</td>
<td class="num">(287,375)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 30.75<span></span>
</td>
<td class="nump">$ 19.90<span></span>
</td>
<td class="nump">$ 10.58<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Forfeited, number of options (in shares)</a></td>
<td class="num">(35,010)<span></span>
</td>
<td class="num">(49,285)<span></span>
</td>
<td class="num">(69,880)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Forfeited, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 43.79<span></span>
</td>
<td class="nump">$ 43.34<span></span>
</td>
<td class="nump">$ 41.12<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding, number of options (in shares)</a></td>
<td class="nump">1,592,686<span></span>
</td>
<td class="nump">1,521,167<span></span>
</td>
<td class="nump">1,472,130<span></span>
</td>
<td class="nump">1,482,964<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 42.04<span></span>
</td>
<td class="nump">$ 37.70<span></span>
</td>
<td class="nump">$ 33.11<span></span>
</td>
<td class="nump">$ 27.49<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable, number of options (in shares)</a></td>
<td class="nump">726,817<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 37.78<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable, weighted average remaining contractual term (Year)</a></td>
<td class="text">5 years 3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Exercisable, aggregate intrinsic value</a></td>
<td class="nump">$ 45,649<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>120
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847749104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Accumulated Other Comprehensive Loss (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Foreign Currency Translation Adjustments</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Defined Benefit Pension Plan</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Unrealized Gain (Loss) on Cash Flow Hedges</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Total</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Beginning Balance &#8211; January 1, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(18,832</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,560</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(23,813</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss) before reclassifications</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,210</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,474</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: middle;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(1)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(13,855</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: middle;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(2)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,171</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,067</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(3)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,067</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net current-period other comprehensive income (loss)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,210</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(13,855</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,104</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Ending Balance &#8211; December 31, 2019</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(16,622</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td class="GFJY4-DHN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(8,295</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(24,917</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Foreign Currency Translation Adjustments</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Defined Benefit Pension Plan</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Unrealized Gain (Loss) on Cash Flow Hedges</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Total</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Beginning Balance &#8211; January 1, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(12,856</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(10,978</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,636</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(21,198</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Other comprehensive income (loss) before reclassifications</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(5,976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(156</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(4)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,924</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(5)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(3,208</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">593</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top;"><sup style="vertical-align:top;line-height:120%;font-size:pt"><em style="font-weight: inherit; font-style: normal;">(6)</em></sup></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">593</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Net current-period other comprehensive income (loss)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(5,976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">437</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,924</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,615</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Ending Balance &#8211; December 31, 2018</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(18,832</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(10,541</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,560</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"><em style="font-weight: inherit; font-style: normal;">&#160;</em></td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(23,813</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock', window );">Reclassification out of Accumulated Other Comprehensive Income [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 27pt; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b><b>Amounts reclassified from AOCL</b></b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Loss on pension settlement</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,920</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amortization of net loss</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">843</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total before tax</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,763</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Income tax impact</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,696</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Amounts reclassified from AOCL</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,067</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information about items reclassified out of accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>121
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6858668112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock', window );">Property Plant and Equipment, Estimated Useful Lives [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Land improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">8</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Buildings and improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">10</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">40</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Machinery and equipment</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Dies and tools</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Vehicles</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Office equipment and systems</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">3</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-bottom: 0pt; margin-top: 0pt;">Leasehold improvements</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: right;">2</td>
       <td style="width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">&#8211;</td>
       <td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for the useful life of long-lived, physical assets used in the normal conduct of business and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_PropertyPlantAndEquipmentEstimatedUsefulLivesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>122
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823575184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2019</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Lease, Cost [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Twelve Months Ended December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating lease cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,647</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance lease cost:</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Amortization of ROU assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,531</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Interest on lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,227</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total lease cost</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,405</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Components of Lease Assets and Liabilities [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Operating Leases</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease ROU assets (1)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">35,950</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities - current (2)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,231</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities - noncurrent (3)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">29,778</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total operating lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">37,009</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Finance Leases</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease ROU assets, gross</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">29,142</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accumulated depreciation - finance lease ROU assets</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(3,079</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Finance lease ROU assets, net (4)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">26,063</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease liabilities - current (5)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,830</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance lease liabilities - noncurrent (6)</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">24,132</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total finance lease liabilities</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">25,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock', window );">Schedule of Leases Cash Flow Information [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b><b>Three Months Ended December 31, 2019</b></b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b>Twelve Months Ended December 31, 2019</b></td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Cash paid for amounts included in the measurement of lease liabilities</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating cash flows from operating leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,174</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,125</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating cash flows from finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">471</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,864</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financing cash flows from finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">976</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,237</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">ROU assets obtained in exchange for lease liabilities</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">239</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,021</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">632</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,797</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_LeaseTermAndDiscountRateTableTextBlock', window );">Lease, Term and Discount Rate [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average remaining lease term (in years)</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.90</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13.87</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
       <td>&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Weighted average discount rate</p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.59</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Finance Leases</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.83</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock', window );">Operating and Finance Lease, Liability, Maturity [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;">
     <tbody>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>As of December 31, 2019</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom;">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Finance Leases</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:'Times New Roman', Times, serif;font-size:10pt;margin:0pt;text-align:center;"><b><b>Operating Leases</b></b></p> </td>
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2020</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,769</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,086</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2021</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,352</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,029</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,536</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,472</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,659</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,629</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">2024</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,650</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,288</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">After 2024</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">29,371</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">14,232</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Total minimum lease payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">45,337</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">44,736</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Interest component</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(19,375</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(7,727</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
      </tr>
      <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
       <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Present value of minimum lease payments</p> </td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">25,962</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;">&#160;</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
       <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">37,009</td>
       <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">&#160;</td>
      </tr>
     </tbody>
    </table>
   <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_LeaseTermAndDiscountRateTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of term and discount rate of lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_LeaseTermAndDiscountRateTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of operating and finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating and finance lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_OperatingAndFinanceLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of components of lease assets and liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ScheduleOfComponentsOfLeaseAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of leases related to cash flow information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ScheduleOfLeasesCashFlowInformationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>123
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853872832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Segment Reporting (Details Textual)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of Reportable Segments</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk [Member] | Revenue Benchmark [Member] | UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">75.00%<span></span>
</td>
<td class="nump">74.00%<span></span>
</td>
<td class="nump">74.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk [Member] | Net Assets, Geographic Area [Member] | UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">80.00%<span></span>
</td>
<td class="nump">80.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_NetAssetsGeographicAreaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_NetAssetsGeographicAreaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>124
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6839495200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Acquisitions - Unaudited Pro Forma Information (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 590,932<span></span>
</td>
<td class="nump">$ 601,135<span></span>
</td>
<td class="nump">$ 541,916<span></span>
</td>
<td class="nump">$ 470,353<span></span>
</td>
<td class="nump">$ 563,404<span></span>
</td>
<td class="nump">$ 562,388<span></span>
</td>
<td class="nump">$ 497,581<span></span>
</td>
<td class="nump">$ 400,091<span></span>
</td>
<td class="nump">$ 2,204,336<span></span>
</td>
<td class="nump">$ 2,023,464<span></span>
</td>
<td class="nump">$ 1,679,373<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">As reported</a></td>
<td class="nump">$ 69,614<span></span>
</td>
<td class="nump">$ 75,574<span></span>
</td>
<td class="nump">$ 61,958<span></span>
</td>
<td class="nump">$ 44,861<span></span>
</td>
<td class="nump">$ 75,575<span></span>
</td>
<td class="nump">$ 75,776<span></span>
</td>
<td class="nump">$ 53,261<span></span>
</td>
<td class="nump">$ 33,645<span></span>
</td>
<td class="nump">$ 252,007<span></span>
</td>
<td class="nump">$ 238,257<span></span>
</td>
<td class="nump">$ 157,808<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income attributable to common shareholders per common share - diluted: (in dollars per share)</a></td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 1.18<span></span>
</td>
<td class="nump">$ 0.98<span></span>
</td>
<td class="nump">$ 0.76<span></span>
</td>
<td class="nump">$ 1.20<span></span>
</td>
<td class="nump">$ 1.11<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
<td class="nump">$ 0.42<span></span>
</td>
<td class="nump">$ 4.03<span></span>
</td>
<td class="nump">$ 3.54<span></span>
</td>
<td class="nump">$ 2.53<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementScenarioAxis=srt_ProFormaMember', window );">Pro Forma [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,206,952<span></span>
</td>
<td class="nump">$ 2,067,737<span></span>
</td>
<td class="nump">$ 1,755,358<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">As reported</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 248,335<span></span>
</td>
<td class="nump">$ 230,379<span></span>
</td>
<td class="nump">$ 151,764<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income attributable to common shareholders per common share - diluted: (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.97<span></span>
</td>
<td class="nump">$ 3.41<span></span>
</td>
<td class="nump">$ 2.44<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=srt_ProFormaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=srt_ProFormaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>125
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6834550880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity (Parentheticals) - AOCI Attributable to Parent [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax', window );">Unrealized gain (loss) on interest rate swaps, tax</a></td>
<td class="nump">$ 4,877<span></span>
</td>
<td class="nump">$ 1,027<span></span>
</td>
<td class="nump">$ 2,384<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax', window );">Pension liability adjustment, tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 154<span></span>
</td>
<td class="nump">$ 21<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after reclassification adjustment, of tax (expense) benefit for (increase) decrease in accumulated other comprehensive income of defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e640-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (i-k)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit), before reclassification adjustments, related to increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e640-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>126
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838210624">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 322,883<span></span>
</td>
<td class="nump">$ 224,482<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, less allowance for doubtful accounts of $6,968 and $4,873 at December 31, 2019 and 2018, respectively</a></td>
<td class="nump">319,538<span></span>
</td>
<td class="nump">326,133<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">522,024<span></span>
</td>
<td class="nump">544,750<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other assets</a></td>
<td class="nump">31,384<span></span>
</td>
<td class="nump">25,404<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">1,195,829<span></span>
</td>
<td class="nump">1,120,769<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">316,976<span></span>
</td>
<td class="nump">278,929<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_FiniteLivedCustomerListsNet', window );">Customer lists, net</a></td>
<td class="nump">55,552<span></span>
</td>
<td class="nump">61,194<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_FiniteLivedPatentsAndTechnologyNet', window );">Patents and technology, net</a></td>
<td class="nump">85,546<span></span>
</td>
<td class="nump">29,970<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherIntangibleAssetsNet', window );">Other intangible assets, net</a></td>
<td class="nump">8,259<span></span>
</td>
<td class="nump">3,043<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_TradeNamesNet', window );">Tradenames, net</a></td>
<td class="nump">148,377<span></span>
</td>
<td class="nump">152,283<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">805,284<span></span>
</td>
<td class="nump">764,655<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">2,933<span></span>
</td>
<td class="nump">163<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent', window );">Operating lease and other assets</a></td>
<td class="nump">46,913<span></span>
</td>
<td class="nump">15,308<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">2,665,669<span></span>
</td>
<td class="nump">2,426,314<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Short-term borrowings</a></td>
<td class="nump">58,714<span></span>
</td>
<td class="nump">45,583<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">261,977<span></span>
</td>
<td class="nump">328,091<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued wages and employee benefits</a></td>
<td class="nump">41,361<span></span>
</td>
<td class="nump">40,819<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other accrued liabilities</a></td>
<td class="nump">132,629<span></span>
</td>
<td class="nump">144,236<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current portion of long-term borrowings and finance lease obligations</a></td>
<td class="nump">2,383<span></span>
</td>
<td class="nump">1,977<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">497,064<span></span>
</td>
<td class="nump">560,706<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term borrowings and finance lease obligations</a></td>
<td class="nump">837,767<span></span>
</td>
<td class="nump">876,396<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred Income Tax Liabilities, Net, Total</a></td>
<td class="nump">96,328<span></span>
</td>
<td class="nump">71,300<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities', window );">Operating lease and other long-term liabilities</a></td>
<td class="nump">140,432<span></span>
</td>
<td class="nump">95,647<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">1,571,591<span></span>
</td>
<td class="nump">1,604,049<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount', window );">Redeemable noncontrolling interest</a></td>
<td class="nump">61,227<span></span>
</td>
<td class="nump">61,004<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, par value $0.01, 500,000,000 shares authorized, 71,667,726 and 71,186,418 shares issued at December 31, 2019 and 2018, respectively</a></td>
<td class="nump">717<span></span>
</td>
<td class="nump">712<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">498,866<span></span>
</td>
<td class="nump">476,116<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury stock, at cost, 9,103,013 and 9,047,060 shares at December 31, 2019 and 2018, respectively</a></td>
<td class="num">(324,551)<span></span>
</td>
<td class="num">(321,473)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_gnrc_ExcessPurchasePriceOverPredecessorBasis', window );">Excess purchase price over predecessor basis</a></td>
<td class="num">(202,116)<span></span>
</td>
<td class="num">(202,116)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">1,084,383<span></span>
</td>
<td class="nump">831,123<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(24,917)<span></span>
</td>
<td class="num">(23,813)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Stockholders' equity attributable to Generac Holdings, Inc.</a></td>
<td class="nump">1,032,382<span></span>
</td>
<td class="nump">760,549<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Noncontrolling interests</a></td>
<td class="nump">469<span></span>
</td>
<td class="nump">712<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">1,032,851<span></span>
</td>
<td class="nump">761,261<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders&#8217; equity</a></td>
<td class="nump">$ 2,665,669<span></span>
</td>
<td class="nump">$ 2,426,314<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_ExcessPurchasePriceOverPredecessorBasis">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The element that represents the excess purchase price over predecessor basis.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_ExcessPurchasePriceOverPredecessorBasis</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_FiniteLivedCustomerListsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of accumulated amortization, as of the balance sheet date of an asset having a finite beneficial life acquired in a business combination or other transaction representing a favorable existing relationship with customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_FiniteLivedCustomerListsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_FiniteLivedPatentsAndTechnologyNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the carrying amount of finite-lived patents and technology as of balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_FiniteLivedPatentsAndTechnologyNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, and other liabilities classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_OperatingLeaseLiabilityNoncurrentAndOtherLongTermLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease and other assets after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_OperatingLeaseRightOfUseAssetAndOtherAssestNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gnrc_TradeNamesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net carrying amount as of the balance sheet date of indefinite-lived and finite-lived tradenames on the statement of financial position representing the rights acquired through registration of a trade name to gain or protect exclusive use thereof.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gnrc_TradeNamesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gnrc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4428-111522<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6801-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31931-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116846819&amp;loc=d3e3927-108312<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which 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).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.31)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e7018-107765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated amortization of finite-lived and indefinite-lived intangible assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>As of the reporting date, the aggregate carrying amount of all noncontrolling interests which are redeemable by the (parent) entity (1) at a fixed or determinable price on a fixed or determinable date, (2) at the option of the holder of the noncontrolling interest, or (3) upon occurrence of an event that is not solely within the control of the (parent) entity. This item includes noncontrolling interest holder's ownership (or holders' ownership) regardless of the type of equity interest (common, preferred, other) including all potential organizational (legal) forms of the investee entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (16)(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (12)(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=65877616&amp;loc=SL6540498-122764<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RedeemableNoncontrollingInterestEquityCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermBorrowings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermBorrowings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4568740-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=116874947&amp;loc=SL4590271-111686<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4568447-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>127
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6853388448">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 5 - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details) - Fair Value, Inputs, Level 2 [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Commodity Contract [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeFairValueOfDerivativeNet', window );">Fair Value of Derivatives</a></td>
<td class="nump">$ 6<span></span>
</td>
<td class="num">$ (160)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Foreign Exchange Contract [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeFairValueOfDerivativeNet', window );">Fair Value of Derivatives</a></td>
<td class="nump">31<span></span>
</td>
<td class="num">(117)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Interest Rate Swap [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeFairValueOfDerivativeNet', window );">Fair Value of Derivatives</a></td>
<td class="num">$ (10,425)<span></span>
</td>
<td class="nump">$ 8,307<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFairValueOfDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of the assets less the liabilities of a derivative or group of derivatives.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeFairValueOfDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_CommodityContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>128
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6848020528">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 11 - Product Warranty Obligations 2 (Details Textual)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>129
<FILENAME>R86.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847702496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Earnings Per Share (Details Textual) - shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember', window );">Share-based Payment Arrangement, Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">26,100<span></span>
</td>
<td class="nump">147,400<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>130
<FILENAME>R82.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6844351536">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 12 - Credit Agreements - Short-term Borrowings (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Short-term borrowings</a></td>
<td class="nump">$ 58,714<span></span>
</td>
<td class="nump">$ 45,583<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermDebtTypeAxis=gnrc_ABLRevolvingCreditFacilityMember', window );">ABL Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Short-term borrowings</a></td>
<td class="nump">30,961<span></span>
</td>
<td class="nump">18,459<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermDebtTypeAxis=gnrc_OtherLinesOfCreditMember', window );">Other Lines of Credit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Short-term borrowings</a></td>
<td class="nump">$ 27,753<span></span>
</td>
<td class="nump">$ 27,124<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermBorrowings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermBorrowings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermDebtTypeAxis=gnrc_ABLRevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermDebtTypeAxis=gnrc_ABLRevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermDebtTypeAxis=gnrc_OtherLinesOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermDebtTypeAxis=gnrc_OtherLinesOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>131
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847781440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Leases - Supplement Cash Flow Information Related to Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating cash flows from operating leases</a></td>
<td class="nump">$ 2,174<span></span>
</td>
<td class="nump">$ 10,125<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestPaymentOnLiability', window );">Operating cash flows from finance leases</a></td>
<td class="nump">471<span></span>
</td>
<td class="nump">1,864<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Financing cash flows from finance leases</a></td>
<td class="nump">976<span></span>
</td>
<td class="nump">3,237<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Operating leases</a></td>
<td class="nump">239<span></span>
</td>
<td class="nump">4,021<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability', window );">Finance leases</a></td>
<td class="nump">$ 632<span></span>
</td>
<td class="nump">$ 8,797<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestPaymentOnLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of interest paid on finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918643-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestPaymentOnLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
